﻿2026-06-05T00:45:22.9092005Z ##[group]Run ./traceable-reqs check --json
2026-06-05T00:45:22.9094179Z [36;1m./traceable-reqs check --json[0m
2026-06-05T00:45:22.9119638Z shell: /usr/bin/bash -e {0}
2026-06-05T00:45:22.9121168Z ##[endgroup]
2026-06-05T00:45:22.9346811Z {
2026-06-05T00:45:22.9348120Z   "schemaVersion": 1,
2026-06-05T00:45:22.9349513Z   "summary": {
2026-06-05T00:45:22.9350759Z     "requirementCount": 135,
2026-06-05T00:45:22.9352220Z     "completeCount": 135,
2026-06-05T00:45:22.9353637Z     "incompleteCount": 0,
2026-06-05T00:45:22.9355009Z     "findingCount": 0
2026-06-05T00:45:22.9356238Z   },
2026-06-05T00:45:22.9371645Z   "requirements": [
2026-06-05T00:45:22.9373160Z     {
2026-06-05T00:45:22.9374260Z       "id": "REQ-API-1",
2026-06-05T00:45:22.9376212Z       "title": "api prefix and adapter_name on every machinery invocation",
2026-06-05T00:45:22.9378414Z       "requiredStages": [
2026-06-05T00:45:22.9379794Z         "impl",
2026-06-05T00:45:22.9380927Z         "unit",
2026-06-05T00:45:22.9385516Z         "int"
2026-06-05T00:45:22.9386830Z       ],
2026-06-05T00:45:22.9387923Z       "stages": {
2026-06-05T00:45:22.9389098Z         "doc": {
2026-06-05T00:45:22.9390513Z           "complete": false,
2026-06-05T00:45:22.9391958Z           "evidence": []
2026-06-05T00:45:22.9393241Z         },
2026-06-05T00:45:22.9394328Z         "impl": {
2026-06-05T00:45:22.9395543Z           "complete": true,
2026-06-05T00:45:22.9397068Z           "evidence": [
2026-06-05T00:45:22.9398594Z             {
2026-06-05T00:45:22.9400234Z               "path": "crates/spt/src/api/mod.rs",
2026-06-05T00:45:22.9402222Z               "line": 15
2026-06-05T00:45:22.9403823Z             }
2026-06-05T00:45:22.9404977Z           ]
2026-06-05T00:45:22.9406190Z         },
2026-06-05T00:45:22.9407284Z         "int": {
2026-06-05T00:45:22.9408559Z           "complete": true,
2026-06-05T00:45:22.9410056Z           "evidence": [
2026-06-05T00:45:22.9411355Z             {
2026-06-05T00:45:22.9412980Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-05T00:45:22.9415104Z               "line": 13
2026-06-05T00:45:22.9416417Z             }
2026-06-05T00:45:22.9417639Z           ]
2026-06-05T00:45:22.9418855Z         },
2026-06-05T00:45:22.9420084Z         "unit": {
2026-06-05T00:45:22.9421315Z           "complete": true,
2026-06-05T00:45:22.9422675Z           "evidence": [
2026-06-05T00:45:22.9423914Z             {
2026-06-05T00:45:22.9425187Z               "path": "crates/spt/src/api/mod.rs",
2026-06-05T00:45:22.9426869Z               "line": 391
2026-06-05T00:45:22.9428135Z             },
2026-06-05T00:45:22.9429268Z             {
2026-06-05T00:45:22.9430552Z               "path": "crates/spt/src/api/mod.rs",
2026-06-05T00:45:22.9432240Z               "line": 397
2026-06-05T00:45:22.9433504Z             },
2026-06-05T00:45:22.9434608Z             {
2026-06-05T00:45:22.9435863Z               "path": "crates/spt/src/api/mod.rs",
2026-06-05T00:45:22.9437555Z               "line": 417
2026-06-05T00:45:22.9438818Z             }
2026-06-05T00:45:22.9440018Z           ]
2026-06-05T00:45:22.9441070Z         }
2026-06-05T00:45:22.9442098Z       }
2026-06-05T00:45:22.9443114Z     },
2026-06-05T00:45:22.9444154Z     {
2026-06-05T00:45:22.9445225Z       "id": "REQ-API-2",
2026-06-05T00:45:22.9447423Z       "title": "The api subcommand surface (bind/listen/poll/state/worker/boundary/...)",
2026-06-05T00:45:22.9450050Z       "requiredStages": [
2026-06-05T00:45:22.9451364Z         "impl",
2026-06-05T00:45:22.9452469Z         "unit",
2026-06-05T00:45:22.9453568Z         "int"
2026-06-05T00:45:22.9454642Z       ],
2026-06-05T00:45:22.9455683Z       "stages": {
2026-06-05T00:45:22.9456825Z         "doc": {
2026-06-05T00:45:22.9457990Z           "complete": false,
2026-06-05T00:45:22.9459414Z           "evidence": []
2026-06-05T00:45:22.9460684Z         },
2026-06-05T00:45:22.9461735Z         "impl": {
2026-06-05T00:45:22.9462920Z           "complete": true,
2026-06-05T00:45:22.9464270Z           "evidence": [
2026-06-05T00:45:22.9465488Z             {
2026-06-05T00:45:22.9467387Z               "path": "crates/spt-store/src/history.rs",
2026-06-05T00:45:22.9469216Z               "line": 15
2026-06-05T00:45:22.9470827Z             },
2026-06-05T00:45:22.9471888Z             {
2026-06-05T00:45:22.9473155Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:22.9474844Z               "line": 20
2026-06-05T00:45:22.9476052Z             },
2026-06-05T00:45:22.9477109Z             {
2026-06-05T00:45:22.9478367Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:22.9480430Z               "line": 125
2026-06-05T00:45:22.9481659Z             },
2026-06-05T00:45:22.9482711Z             {
2026-06-05T00:45:22.9484035Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:22.9485744Z               "line": 21
2026-06-05T00:45:22.9486946Z             },
2026-06-05T00:45:22.9488006Z             {
2026-06-05T00:45:22.9489334Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:22.9491045Z               "line": 38
2026-06-05T00:45:22.9492268Z             },
2026-06-05T00:45:22.9493324Z             {
2026-06-05T00:45:22.9494612Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:22.9496337Z               "line": 172
2026-06-05T00:45:22.9497560Z             },
2026-06-05T00:45:22.9498611Z             {
2026-06-05T00:45:22.9499945Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:22.9501659Z               "line": 211
2026-06-05T00:45:22.9502880Z             },
2026-06-05T00:45:22.9503925Z             {
2026-06-05T00:45:22.9505219Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:22.9506933Z               "line": 241
2026-06-05T00:45:22.9508163Z             },
2026-06-05T00:45:22.9509250Z             {
2026-06-05T00:45:22.9510510Z               "path": "crates/spt/src/api/worker.rs",
2026-06-05T00:45:22.9512161Z               "line": 17
2026-06-05T00:45:22.9513361Z             },
2026-06-05T00:45:22.9514410Z             {
2026-06-05T00:45:22.9515689Z               "path": "crates/spt/src/api/worker.rs",
2026-06-05T00:45:22.9517375Z               "line": 30
2026-06-05T00:45:22.9518594Z             },
2026-06-05T00:45:22.9519695Z             {
2026-06-05T00:45:22.9520967Z               "path": "crates/spt/src/api/worker.rs",
2026-06-05T00:45:22.9522640Z               "line": 63
2026-06-05T00:45:22.9523842Z             },
2026-06-05T00:45:22.9524902Z             {
2026-06-05T00:45:22.9526156Z               "path": "crates/spt/src/api/worker.rs",
2026-06-05T00:45:22.9527823Z               "line": 76
2026-06-05T00:45:22.9529024Z             }
2026-06-05T00:45:22.9530534Z           ]
2026-06-05T00:45:22.9531548Z         },
2026-06-05T00:45:22.9532584Z         "int": {
2026-06-05T00:45:22.9533733Z           "complete": true,
2026-06-05T00:45:22.9535036Z           "evidence": [
2026-06-05T00:45:22.9536230Z             {
2026-06-05T00:45:22.9537539Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-05T00:45:22.9539314Z               "line": 14
2026-06-05T00:45:22.9540559Z             },
2026-06-05T00:45:22.9541620Z             {
2026-06-05T00:45:22.9542929Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-05T00:45:22.9544672Z               "line": 151
2026-06-05T00:45:22.9545891Z             }
2026-06-05T00:45:22.9546937Z           ]
2026-06-05T00:45:22.9547942Z         },
2026-06-05T00:45:22.9548970Z         "unit": {
2026-06-05T00:45:22.9550471Z           "complete": true,
2026-06-05T00:45:22.9551800Z           "evidence": [
2026-06-05T00:45:22.9552990Z             {
2026-06-05T00:45:22.9554293Z               "path": "crates/spt-store/src/history.rs",
2026-06-05T00:45:22.9555998Z               "line": 42
2026-06-05T00:45:22.9557218Z             },
2026-06-05T00:45:22.9558281Z             {
2026-06-05T00:45:22.9559606Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:22.9561327Z               "line": 228
2026-06-05T00:45:22.9562563Z             },
2026-06-05T00:45:22.9563633Z             {
2026-06-05T00:45:22.9565227Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:22.9566951Z               "line": 356
2026-06-05T00:45:22.9568325Z             },
2026-06-05T00:45:22.9569452Z             {
2026-06-05T00:45:22.9570775Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:22.9572498Z               "line": 367
2026-06-05T00:45:22.9573724Z             },
2026-06-05T00:45:22.9574801Z             {
2026-06-05T00:45:22.9576096Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:22.9577825Z               "line": 473
2026-06-05T00:45:22.9579050Z             },
2026-06-05T00:45:22.9580153Z             {
2026-06-05T00:45:22.9581460Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:22.9583185Z               "line": 485
2026-06-05T00:45:22.9584416Z             },
2026-06-05T00:45:22.9585489Z             {
2026-06-05T00:45:22.9586754Z               "path": "crates/spt/src/api/worker.rs",
2026-06-05T00:45:22.9588427Z               "line": 137
2026-06-05T00:45:22.9589708Z             },
2026-06-05T00:45:22.9590759Z             {
2026-06-05T00:45:22.9592020Z               "path": "crates/spt/src/api/worker.rs",
2026-06-05T00:45:22.9593717Z               "line": 172
2026-06-05T00:45:22.9594934Z             }
2026-06-05T00:45:22.9595990Z           ]
2026-06-05T00:45:22.9597003Z         }
2026-06-05T00:45:22.9598004Z       }
2026-06-05T00:45:22.9598983Z     },
2026-06-05T00:45:22.9600000Z     {
2026-06-05T00:45:22.9601024Z       "id": "REQ-API-3",
2026-06-05T00:45:22.9602669Z       "title": "commune/signoff are file-drops, not commands",
2026-06-05T00:45:22.9604580Z       "requiredStages": [
2026-06-05T00:45:22.9605849Z         "impl",
2026-06-05T00:45:22.9606941Z         "unit",
2026-06-05T00:45:22.9608021Z         "int"
2026-06-05T00:45:22.9609077Z       ],
2026-06-05T00:45:22.9610124Z       "stages": {
2026-06-05T00:45:22.9611236Z         "doc": {
2026-06-05T00:45:22.9612382Z           "complete": false,
2026-06-05T00:45:22.9613723Z           "evidence": []
2026-06-05T00:45:22.9614962Z         },
2026-06-05T00:45:22.9615987Z         "impl": {
2026-06-05T00:45:22.9617165Z           "complete": true,
2026-06-05T00:45:22.9618456Z           "evidence": [
2026-06-05T00:45:22.9619705Z             {
2026-06-05T00:45:22.9620983Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-05T00:45:22.9622670Z               "line": 27
2026-06-05T00:45:22.9623874Z             },
2026-06-05T00:45:22.9624941Z             {
2026-06-05T00:45:22.9626250Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:22.9627971Z               "line": 293
2026-06-05T00:45:22.9629233Z             }
2026-06-05T00:45:22.9630273Z           ]
2026-06-05T00:45:22.9631278Z         },
2026-06-05T00:45:22.9632277Z         "int": {
2026-06-05T00:45:22.9633403Z           "complete": true,
2026-06-05T00:45:22.9654949Z           "evidence": [
2026-06-05T00:45:22.9656290Z             {
2026-06-05T00:45:22.9657619Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-05T00:45:22.9659455Z               "line": 203
2026-06-05T00:45:22.9660636Z             }
2026-06-05T00:45:22.9661661Z           ]
2026-06-05T00:45:22.9662627Z         },
2026-06-05T00:45:22.9663603Z         "unit": {
2026-06-05T00:45:22.9664726Z           "complete": true,
2026-06-05T00:45:22.9665982Z           "evidence": [
2026-06-05T00:45:22.9667123Z             {
2026-06-05T00:45:22.9668396Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-05T00:45:22.9670101Z               "line": 230
2026-06-05T00:45:22.9671289Z             },
2026-06-05T00:45:22.9672298Z             {
2026-06-05T00:45:22.9673551Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:22.9675231Z               "line": 514
2026-06-05T00:45:22.9676421Z             }
2026-06-05T00:45:22.9677419Z           ]
2026-06-05T00:45:22.9678389Z         }
2026-06-05T00:45:22.9679369Z       }
2026-06-05T00:45:22.9680333Z     },
2026-06-05T00:45:22.9681290Z     {
2026-06-05T00:45:22.9682302Z       "id": "REQ-ARCH-1",
2026-06-05T00:45:22.9684266Z       "title": "Many small acyclically-layered crates",
2026-06-05T00:45:22.9686006Z       "requiredStages": [
2026-06-05T00:45:22.9687417Z         "impl"
2026-06-05T00:45:22.9688445Z       ],
2026-06-05T00:45:22.9689532Z       "stages": {
2026-06-05T00:45:22.9690603Z         "doc": {
2026-06-05T00:45:22.9691708Z           "complete": false,
2026-06-05T00:45:22.9692999Z           "evidence": []
2026-06-05T00:45:22.9694178Z         },
2026-06-05T00:45:22.9695156Z         "impl": {
2026-06-05T00:45:22.9696263Z           "complete": true,
2026-06-05T00:45:22.9697521Z           "evidence": [
2026-06-05T00:45:22.9698666Z             {
2026-06-05T00:45:22.9699884Z               "path": "crates/spt-msg/src/lib.rs",
2026-06-05T00:45:22.9701487Z               "line": 16
2026-06-05T00:45:22.9702643Z             },
2026-06-05T00:45:22.9703663Z             {
2026-06-05T00:45:22.9704862Z               "path": "crates/spt-proto/src/lib.rs",
2026-06-05T00:45:22.9706485Z               "line": 12
2026-06-05T00:45:22.9707673Z             },
2026-06-05T00:45:22.9708693Z             {
2026-06-05T00:45:22.9709936Z               "path": "crates/spt-store/src/lib.rs",
2026-06-05T00:45:22.9711548Z               "line": 12
2026-06-05T00:45:22.9712715Z             }
2026-06-05T00:45:22.9713715Z           ]
2026-06-05T00:45:22.9714685Z         },
2026-06-05T00:45:22.9715654Z         "int": {
2026-06-05T00:45:22.9716756Z           "complete": false,
2026-06-05T00:45:22.9718043Z           "evidence": []
2026-06-05T00:45:22.9719236Z         },
2026-06-05T00:45:22.9720220Z         "unit": {
2026-06-05T00:45:22.9721338Z           "complete": false,
2026-06-05T00:45:22.9722620Z           "evidence": []
2026-06-05T00:45:22.9723782Z         }
2026-06-05T00:45:22.9724734Z       }
2026-06-05T00:45:22.9725674Z     },
2026-06-05T00:45:22.9726614Z     {
2026-06-05T00:45:22.9727620Z       "id": "REQ-ARCH-2",
2026-06-05T00:45:22.9729403Z       "title": "Public SDK surface is spt-proto, spt-runtime, spt-msg",
2026-06-05T00:45:22.9731500Z       "requiredStages": [
2026-06-05T00:45:22.9732740Z         "impl"
2026-06-05T00:45:22.9733779Z       ],
2026-06-05T00:45:22.9734772Z       "stages": {
2026-06-05T00:45:22.9735851Z         "doc": {
2026-06-05T00:45:22.9736954Z           "complete": false,
2026-06-05T00:45:22.9738249Z           "evidence": []
2026-06-05T00:45:22.9739455Z         },
2026-06-05T00:45:22.9740452Z         "impl": {
2026-06-05T00:45:22.9741566Z           "complete": true,
2026-06-05T00:45:22.9742834Z           "evidence": [
2026-06-05T00:45:22.9743990Z             {
2026-06-05T00:45:22.9745236Z               "path": "crates/spt-runtime/src/lib.rs",
2026-06-05T00:45:22.9746875Z               "line": 18
2026-06-05T00:45:22.9748044Z             }
2026-06-05T00:45:22.9749053Z           ]
2026-06-05T00:45:22.9750055Z         },
2026-06-05T00:45:22.9751031Z         "int": {
2026-06-05T00:45:22.9752148Z           "complete": false,
2026-06-05T00:45:22.9753449Z           "evidence": []
2026-06-05T00:45:22.9754640Z         },
2026-06-05T00:45:22.9755646Z         "unit": {
2026-06-05T00:45:22.9756801Z           "complete": false,
2026-06-05T00:45:22.9758116Z           "evidence": []
2026-06-05T00:45:22.9759335Z         }
2026-06-05T00:45:22.9760294Z       }
2026-06-05T00:45:22.9761249Z     },
2026-06-05T00:45:22.9762196Z     {
2026-06-05T00:45:22.9763208Z       "id": "REQ-ARCH-3",
2026-06-05T00:45:22.9765292Z       "title": "Wire-protocol version independent of crate semver, N-1 compat window",
2026-06-05T00:45:22.9767703Z       "requiredStages": [
2026-06-05T00:45:22.9768927Z         "impl",
2026-06-05T00:45:22.9770036Z         "unit"
2026-06-05T00:45:22.9771072Z       ],
2026-06-05T00:45:22.9772058Z       "stages": {
2026-06-05T00:45:22.9773128Z         "doc": {
2026-06-05T00:45:22.9774256Z           "complete": false,
2026-06-05T00:45:22.9775565Z           "evidence": []
2026-06-05T00:45:22.9776737Z         },
2026-06-05T00:45:22.9777725Z         "impl": {
2026-06-05T00:45:22.9778838Z           "complete": true,
2026-06-05T00:45:22.9780501Z           "evidence": [
2026-06-05T00:45:22.9781652Z             {
2026-06-05T00:45:22.9782921Z               "path": "crates/spt-proto/src/version.rs",
2026-06-05T00:45:22.9784758Z               "line": 34
2026-06-05T00:45:22.9785935Z             },
2026-06-05T00:45:22.9786962Z             {
2026-06-05T00:45:22.9788244Z               "path": "crates/spt-proto/src/version.rs",
2026-06-05T00:45:22.9789978Z               "line": 41
2026-06-05T00:45:22.9791151Z             }
2026-06-05T00:45:22.9792160Z           ]
2026-06-05T00:45:22.9793150Z         },
2026-06-05T00:45:22.9794137Z         "int": {
2026-06-05T00:45:22.9795262Z           "complete": false,
2026-06-05T00:45:22.9796580Z           "evidence": []
2026-06-05T00:45:22.9797770Z         },
2026-06-05T00:45:22.9798748Z         "unit": {
2026-06-05T00:45:22.9799910Z           "complete": true,
2026-06-05T00:45:22.9801185Z           "evidence": [
2026-06-05T00:45:22.9802386Z             {
2026-06-05T00:45:22.9803691Z               "path": "crates/spt-proto/src/version.rs",
2026-06-05T00:45:22.9805409Z               "line": 51
2026-06-05T00:45:22.9806585Z             },
2026-06-05T00:45:22.9807619Z             {
2026-06-05T00:45:22.9808901Z               "path": "crates/spt-proto/src/version.rs",
2026-06-05T00:45:22.9810631Z               "line": 65
2026-06-05T00:45:22.9811827Z             },
2026-06-05T00:45:22.9812860Z             {
2026-06-05T00:45:22.9814119Z               "path": "crates/spt-proto/src/version.rs",
2026-06-05T00:45:22.9815797Z               "line": 74
2026-06-05T00:45:22.9816988Z             }
2026-06-05T00:45:22.9817988Z           ]
2026-06-05T00:45:22.9818963Z         }
2026-06-05T00:45:22.9819975Z       }
2026-06-05T00:45:22.9820978Z     },
2026-06-05T00:45:22.9821962Z     {
2026-06-05T00:45:22.9822975Z       "id": "REQ-ARCH-4",
2026-06-05T00:45:22.9824820Z       "title": "Copy-verbatim the commodity layer from the sister project",
2026-06-05T00:45:22.9826981Z       "requiredStages": [
2026-06-05T00:45:22.9828250Z         "impl",
2026-06-05T00:45:22.9829354Z         "unit"
2026-06-05T00:45:22.9830380Z       ],
2026-06-05T00:45:22.9831370Z       "stages": {
2026-06-05T00:45:22.9832451Z         "doc": {
2026-06-05T00:45:22.9833552Z           "complete": false,
2026-06-05T00:45:22.9834861Z           "evidence": []
2026-06-05T00:45:22.9836044Z         },
2026-06-05T00:45:22.9837048Z         "impl": {
2026-06-05T00:45:22.9838164Z           "complete": true,
2026-06-05T00:45:22.9839604Z           "evidence": [
2026-06-05T00:45:22.9840783Z             {
2026-06-05T00:45:22.9842036Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9843690Z               "line": 82
2026-06-05T00:45:22.9844868Z             },
2026-06-05T00:45:22.9845891Z             {
2026-06-05T00:45:22.9847140Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9848795Z               "line": 96
2026-06-05T00:45:22.9850054Z             },
2026-06-05T00:45:22.9851087Z             {
2026-06-05T00:45:22.9852346Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9854024Z               "line": 116
2026-06-05T00:45:22.9855232Z             },
2026-06-05T00:45:22.9856250Z             {
2026-06-05T00:45:22.9857476Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9859125Z               "line": 131
2026-06-05T00:45:22.9860371Z             },
2026-06-05T00:45:22.9861403Z             {
2026-06-05T00:45:22.9862655Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9864308Z               "line": 181
2026-06-05T00:45:22.9865499Z             }
2026-06-05T00:45:22.9866506Z           ]
2026-06-05T00:45:22.9867488Z         },
2026-06-05T00:45:22.9868483Z         "int": {
2026-06-05T00:45:22.9869641Z           "complete": false,
2026-06-05T00:45:22.9870931Z           "evidence": []
2026-06-05T00:45:22.9872119Z         },
2026-06-05T00:45:22.9873110Z         "unit": {
2026-06-05T00:45:22.9874228Z           "complete": true,
2026-06-05T00:45:22.9875748Z           "evidence": [
2026-06-05T00:45:22.9876899Z             {
2026-06-05T00:45:22.9878128Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9879992Z               "line": 245
2026-06-05T00:45:22.9881194Z             },
2026-06-05T00:45:22.9882219Z             {
2026-06-05T00:45:22.9883444Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9885079Z               "line": 255
2026-06-05T00:45:22.9886258Z             },
2026-06-05T00:45:22.9887279Z             {
2026-06-05T00:45:22.9888518Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9890251Z               "line": 266
2026-06-05T00:45:22.9891453Z             },
2026-06-05T00:45:22.9892490Z             {
2026-06-05T00:45:22.9893744Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9895395Z               "line": 277
2026-06-05T00:45:22.9896581Z             },
2026-06-05T00:45:22.9897605Z             {
2026-06-05T00:45:22.9898840Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9900563Z               "line": 289
2026-06-05T00:45:22.9901755Z             },
2026-06-05T00:45:22.9902789Z             {
2026-06-05T00:45:22.9904022Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9905654Z               "line": 302
2026-06-05T00:45:22.9906838Z             },
2026-06-05T00:45:22.9907859Z             {
2026-06-05T00:45:22.9909095Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9910777Z               "line": 313
2026-06-05T00:45:22.9911969Z             },
2026-06-05T00:45:22.9912998Z             {
2026-06-05T00:45:22.9914224Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9915856Z               "line": 327
2026-06-05T00:45:22.9917039Z             },
2026-06-05T00:45:22.9918051Z             {
2026-06-05T00:45:22.9919306Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:22.9920950Z               "line": 355
2026-06-05T00:45:22.9922139Z             }
2026-06-05T00:45:22.9923162Z           ]
2026-06-05T00:45:22.9924134Z         }
2026-06-05T00:45:22.9925097Z       }
2026-06-05T00:45:22.9926056Z     },
2026-06-05T00:45:22.9927005Z     {
2026-06-05T00:45:22.9928014Z       "id": "REQ-CONSENT-1",
2026-06-05T00:45:22.9935564Z       "title": "Consent grant store: capability x subject-agent x target-node rows, enforced at the target node, subnet-settable (replicates as security material near the trust store), revocable; gated-capability ids (remote-exec, instantiate-anywhere) reserved-but-refusing; v1 consumers are the shell spawn gates (CONTEXT Consent & security gates)",
2026-06-05T00:45:22.9943325Z       "requiredStages": [
2026-06-05T00:45:22.9944545Z         "impl",
2026-06-05T00:45:22.9945584Z         "unit"
2026-06-05T00:45:22.9946599Z       ],
2026-06-05T00:45:22.9947575Z       "stages": {
2026-06-05T00:45:22.9948640Z         "doc": {
2026-06-05T00:45:22.9949792Z           "complete": false,
2026-06-05T00:45:22.9951083Z           "evidence": []
2026-06-05T00:45:22.9952282Z         },
2026-06-05T00:45:22.9953266Z         "impl": {
2026-06-05T00:45:22.9954372Z           "complete": true,
2026-06-05T00:45:22.9955621Z           "evidence": [
2026-06-05T00:45:22.9956757Z             {
2026-06-05T00:45:22.9958007Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:22.9959681Z               "line": 27
2026-06-05T00:45:22.9960839Z             },
2026-06-05T00:45:22.9961873Z             {
2026-06-05T00:45:22.9963119Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:22.9964737Z               "line": 75
2026-06-05T00:45:22.9965892Z             },
2026-06-05T00:45:22.9975567Z             {
2026-06-05T00:45:22.9977031Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:22.9978704Z               "line": 98
2026-06-05T00:45:22.9979959Z             },
2026-06-05T00:45:22.9980980Z             {
2026-06-05T00:45:22.9982220Z               "path": "crates/spt-store/src/grants.rs",
2026-06-05T00:45:22.9984163Z               "line": 82
2026-06-05T00:45:22.9985324Z             },
2026-06-05T00:45:22.9986340Z             {
2026-06-05T00:45:22.9987739Z               "path": "crates/spt-store/src/grants.rs",
2026-06-05T00:45:22.9989404Z               "line": 109
2026-06-05T00:45:22.9990583Z             },
2026-06-05T00:45:22.9991599Z             {
2026-06-05T00:45:22.9992852Z               "path": "crates/spt-store/src/grants.rs",
2026-06-05T00:45:22.9994478Z               "line": 127
2026-06-05T00:45:22.9995657Z             },
2026-06-05T00:45:22.9996671Z             {
2026-06-05T00:45:22.9997900Z               "path": "crates/spt-store/src/grants.rs",
2026-06-05T00:45:22.9999565Z               "line": 142
2026-06-05T00:45:23.0000753Z             },
2026-06-05T00:45:23.0001810Z             {
2026-06-05T00:45:23.0002973Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0004551Z               "line": 2238
2026-06-05T00:45:23.0005741Z             }
2026-06-05T00:45:23.0006750Z           ]
2026-06-05T00:45:23.0007738Z         },
2026-06-05T00:45:23.0008700Z         "int": {
2026-06-05T00:45:23.0009847Z           "complete": false,
2026-06-05T00:45:23.0011134Z           "evidence": []
2026-06-05T00:45:23.0012291Z         },
2026-06-05T00:45:23.0013275Z         "unit": {
2026-06-05T00:45:23.0014373Z           "complete": true,
2026-06-05T00:45:23.0015618Z           "evidence": [
2026-06-05T00:45:23.0016750Z             {
2026-06-05T00:45:23.0017990Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0019669Z               "line": 302
2026-06-05T00:45:23.0020834Z             },
2026-06-05T00:45:23.0021847Z             {
2026-06-05T00:45:23.0023095Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0024732Z               "line": 327
2026-06-05T00:45:23.0025896Z             },
2026-06-05T00:45:23.0026911Z             {
2026-06-05T00:45:23.0028155Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0029825Z               "line": 338
2026-06-05T00:45:23.0031010Z             },
2026-06-05T00:45:23.0032018Z             {
2026-06-05T00:45:23.0033236Z               "path": "crates/spt-store/src/grants.rs",
2026-06-05T00:45:23.0034872Z               "line": 165
2026-06-05T00:45:23.0036041Z             },
2026-06-05T00:45:23.0037050Z             {
2026-06-05T00:45:23.0038273Z               "path": "crates/spt-store/src/grants.rs",
2026-06-05T00:45:23.0039990Z               "line": 184
2026-06-05T00:45:23.0041161Z             },
2026-06-05T00:45:23.0042172Z             {
2026-06-05T00:45:23.0043393Z               "path": "crates/spt-store/src/grants.rs",
2026-06-05T00:45:23.0045026Z               "line": 204
2026-06-05T00:45:23.0046209Z             },
2026-06-05T00:45:23.0047223Z             {
2026-06-05T00:45:23.0048366Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0049941Z               "line": 2526
2026-06-05T00:45:23.0051130Z             }
2026-06-05T00:45:23.0052127Z           ]
2026-06-05T00:45:23.0053099Z         }
2026-06-05T00:45:23.0054079Z       }
2026-06-05T00:45:23.0055017Z     },
2026-06-05T00:45:23.0055969Z     {
2026-06-05T00:45:23.0057004Z       "id": "REQ-CONSENT-2",
2026-06-05T00:45:23.0063971Z       "title": "Interactive consent escalation: an ungated high-risk action routes a consent prompt to the user's most-recently-active session; allow-once / allow-always (writes a grant) / deny; pre-consent flags (can_shutdown, shell_wake_spawn_anywhere) author grants via manifest/settings (CONTEXT Consent & security gates)",
2026-06-05T00:45:23.0071086Z       "requiredStages": [
2026-06-05T00:45:23.0072300Z         "impl",
2026-06-05T00:45:23.0073354Z         "unit"
2026-06-05T00:45:23.0074368Z       ],
2026-06-05T00:45:23.0075327Z       "stages": {
2026-06-05T00:45:23.0076391Z         "doc": {
2026-06-05T00:45:23.0077491Z           "complete": false,
2026-06-05T00:45:23.0078769Z           "evidence": []
2026-06-05T00:45:23.0079972Z         },
2026-06-05T00:45:23.0080955Z         "impl": {
2026-06-05T00:45:23.0082256Z           "complete": true,
2026-06-05T00:45:23.0083512Z           "evidence": [
2026-06-05T00:45:23.0084661Z             {
2026-06-05T00:45:23.0090987Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0092800Z               "line": 140
2026-06-05T00:45:23.0093988Z             },
2026-06-05T00:45:23.0095015Z             {
2026-06-05T00:45:23.0096258Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0097889Z               "line": 158
2026-06-05T00:45:23.0099062Z             },
2026-06-05T00:45:23.0100130Z             {
2026-06-05T00:45:23.0101368Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0102987Z               "line": 192
2026-06-05T00:45:23.0104141Z             },
2026-06-05T00:45:23.0105136Z             {
2026-06-05T00:45:23.0106366Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0107974Z               "line": 234
2026-06-05T00:45:23.0109116Z             },
2026-06-05T00:45:23.0110203Z             {
2026-06-05T00:45:23.0111428Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0113046Z               "line": 246
2026-06-05T00:45:23.0114233Z             },
2026-06-05T00:45:23.0115241Z             {
2026-06-05T00:45:23.0116477Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0118084Z               "line": 277
2026-06-05T00:45:23.0119258Z             },
2026-06-05T00:45:23.0120269Z             {
2026-06-05T00:45:23.0121397Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0122902Z               "line": 2131
2026-06-05T00:45:23.0124065Z             },
2026-06-05T00:45:23.0125058Z             {
2026-06-05T00:45:23.0126191Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0127703Z               "line": 2171
2026-06-05T00:45:23.0128865Z             }
2026-06-05T00:45:23.0129882Z           ]
2026-06-05T00:45:23.0130847Z         },
2026-06-05T00:45:23.0131795Z         "int": {
2026-06-05T00:45:23.0132900Z           "complete": false,
2026-06-05T00:45:23.0134157Z           "evidence": []
2026-06-05T00:45:23.0135305Z         },
2026-06-05T00:45:23.0136283Z         "unit": {
2026-06-05T00:45:23.0137369Z           "complete": true,
2026-06-05T00:45:23.0138591Z           "evidence": [
2026-06-05T00:45:23.0139735Z             {
2026-06-05T00:45:23.0140978Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0142605Z               "line": 366
2026-06-05T00:45:23.0143762Z             },
2026-06-05T00:45:23.0144762Z             {
2026-06-05T00:45:23.0145994Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0147615Z               "line": 380
2026-06-05T00:45:23.0148774Z             },
2026-06-05T00:45:23.0149812Z             {
2026-06-05T00:45:23.0151052Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0152663Z               "line": 416
2026-06-05T00:45:23.0153816Z             },
2026-06-05T00:45:23.0154808Z             {
2026-06-05T00:45:23.0156055Z               "path": "crates/spt-daemon/src/grants.rs",
2026-06-05T00:45:23.0157663Z               "line": 448
2026-06-05T00:45:23.0158820Z             },
2026-06-05T00:45:23.0160173Z             {
2026-06-05T00:45:23.0161349Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0162872Z               "line": 3061
2026-06-05T00:45:23.0164048Z             },
2026-06-05T00:45:23.0165059Z             {
2026-06-05T00:45:23.0166191Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0167715Z               "line": 3121
2026-06-05T00:45:23.0168887Z             }
2026-06-05T00:45:23.0169916Z           ]
2026-06-05T00:45:23.0170871Z         }
2026-06-05T00:45:23.0171824Z       }
2026-06-05T00:45:23.0172747Z     },
2026-06-05T00:45:23.0173672Z     {
2026-06-05T00:45:23.0174664Z       "id": "REQ-DAEMON-1",
2026-06-05T00:45:23.0176427Z       "title": "One per-machine spt-daemon owning all per-machine state",
2026-06-05T00:45:23.0178452Z       "requiredStages": [
2026-06-05T00:45:23.0179979Z         "impl",
2026-06-05T00:45:23.0180999Z         "unit",
2026-06-05T00:45:23.0182032Z         "int"
2026-06-05T00:45:23.0183215Z       ],
2026-06-05T00:45:23.0184198Z       "stages": {
2026-06-05T00:45:23.0185243Z         "doc": {
2026-06-05T00:45:23.0186320Z           "complete": false,
2026-06-05T00:45:23.0187585Z           "evidence": []
2026-06-05T00:45:23.0188740Z         },
2026-06-05T00:45:23.0189751Z         "impl": {
2026-06-05T00:45:23.0195462Z           "complete": true,
2026-06-05T00:45:23.0196892Z           "evidence": [
2026-06-05T00:45:23.0198021Z             {
2026-06-05T00:45:23.0199356Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-05T00:45:23.0200981Z               "line": 12
2026-06-05T00:45:23.0202122Z             },
2026-06-05T00:45:23.0203124Z             {
2026-06-05T00:45:23.0204378Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.0206031Z               "line": 16
2026-06-05T00:45:23.0207169Z             },
2026-06-05T00:45:23.0208212Z             {
2026-06-05T00:45:23.0209466Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-05T00:45:23.0211100Z               "line": 15
2026-06-05T00:45:23.0212245Z             },
2026-06-05T00:45:23.0213236Z             {
2026-06-05T00:45:23.0214395Z               "path": "crates/spt/src/api/live.rs",
2026-06-05T00:45:23.0215943Z               "line": 13
2026-06-05T00:45:23.0217071Z             }
2026-06-05T00:45:23.0218060Z           ]
2026-06-05T00:45:23.0219019Z         },
2026-06-05T00:45:23.0220014Z         "int": {
2026-06-05T00:45:23.0221087Z           "complete": true,
2026-06-05T00:45:23.0222293Z           "evidence": [
2026-06-05T00:45:23.0223406Z             {
2026-06-05T00:45:23.0224695Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-05T00:45:23.0226362Z               "line": 32
2026-06-05T00:45:23.0227496Z             }
2026-06-05T00:45:23.0228473Z           ]
2026-06-05T00:45:23.0229464Z         },
2026-06-05T00:45:23.0230420Z         "unit": {
2026-06-05T00:45:23.0231517Z           "complete": true,
2026-06-05T00:45:23.0232748Z           "evidence": [
2026-06-05T00:45:23.0233895Z             {
2026-06-05T00:45:23.0235122Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-05T00:45:23.0236737Z               "line": 254
2026-06-05T00:45:23.0237902Z             },
2026-06-05T00:45:23.0238901Z             {
2026-06-05T00:45:23.0240190Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-05T00:45:23.0241809Z               "line": 262
2026-06-05T00:45:23.0242966Z             },
2026-06-05T00:45:23.0243965Z             {
2026-06-05T00:45:23.0245201Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-05T00:45:23.0246821Z               "line": 275
2026-06-05T00:45:23.0247996Z             },
2026-06-05T00:45:23.0249008Z             {
2026-06-05T00:45:23.0250268Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-05T00:45:23.0251886Z               "line": 283
2026-06-05T00:45:23.0253025Z             },
2026-06-05T00:45:23.0254042Z             {
2026-06-05T00:45:23.0255391Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.0257072Z               "line": 536
2026-06-05T00:45:23.0258229Z             },
2026-06-05T00:45:23.0259274Z             {
2026-06-05T00:45:23.0260541Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.0262198Z               "line": 595
2026-06-05T00:45:23.0263343Z             },
2026-06-05T00:45:23.0264332Z             {
2026-06-05T00:45:23.0265537Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-05T00:45:23.0267144Z               "line": 100
2026-06-05T00:45:23.0268574Z             },
2026-06-05T00:45:23.0269865Z             {
2026-06-05T00:45:23.0271259Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-05T00:45:23.0273095Z               "line": 125
2026-06-05T00:45:23.0274319Z             }
2026-06-05T00:45:23.0275336Z           ]
2026-06-05T00:45:23.0276320Z         }
2026-06-05T00:45:23.0277729Z       }
2026-06-05T00:45:23.0278683Z     },
2026-06-05T00:45:23.0279869Z     {
2026-06-05T00:45:23.0280876Z       "id": "REQ-DAEMON-2",
2026-06-05T00:45:23.0282625Z       "title": "Broker/brain split for seamless self-update",
2026-06-05T00:45:23.0284412Z       "requiredStages": [
2026-06-05T00:45:23.0285606Z         "impl",
2026-06-05T00:45:23.0286626Z         "unit",
2026-06-05T00:45:23.0287643Z         "int"
2026-06-05T00:45:23.0288623Z       ],
2026-06-05T00:45:23.0289821Z       "stages": {
2026-06-05T00:45:23.0291043Z         "doc": {
2026-06-05T00:45:23.0292284Z           "complete": false,
2026-06-05T00:45:23.0293674Z           "evidence": []
2026-06-05T00:45:23.0294890Z         },
2026-06-05T00:45:23.0295894Z         "impl": {
2026-06-05T00:45:23.0303312Z           "complete": true,
2026-06-05T00:45:23.0304709Z           "evidence": [
2026-06-05T00:45:23.0305850Z             {
2026-06-05T00:45:23.0307090Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-05T00:45:23.0308789Z               "line": 23
2026-06-05T00:45:23.0310173Z             },
2026-06-05T00:45:23.0311171Z             {
2026-06-05T00:45:23.0312390Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-05T00:45:23.0313968Z               "line": 489
2026-06-05T00:45:23.0315112Z             },
2026-06-05T00:45:23.0316117Z             {
2026-06-05T00:45:23.0317317Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-05T00:45:23.0318901Z               "line": 612
2026-06-05T00:45:23.0320396Z             },
2026-06-05T00:45:23.0321402Z             {
2026-06-05T00:45:23.0322628Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-05T00:45:23.0324243Z               "line": 32
2026-06-05T00:45:23.0325372Z             },
2026-06-05T00:45:23.0326371Z             {
2026-06-05T00:45:23.0327594Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-05T00:45:23.0329242Z               "line": 191
2026-06-05T00:45:23.0330405Z             },
2026-06-05T00:45:23.0331397Z             {
2026-06-05T00:45:23.0332629Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-05T00:45:23.0334232Z               "line": 519
2026-06-05T00:45:23.0335390Z             },
2026-06-05T00:45:23.0336383Z             {
2026-06-05T00:45:23.0337600Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-05T00:45:23.0339244Z               "line": 688
2026-06-05T00:45:23.0340421Z             },
2026-06-05T00:45:23.0341407Z             {
2026-06-05T00:45:23.0342597Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-05T00:45:23.0344165Z               "line": 11
2026-06-05T00:45:23.0345295Z             },
2026-06-05T00:45:23.0346285Z             {
2026-06-05T00:45:23.0347512Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-05T00:45:23.0349106Z               "line": 69
2026-06-05T00:45:23.0350463Z             },
2026-06-05T00:45:23.0351899Z             {
2026-06-05T00:45:23.0353349Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-05T00:45:23.0355070Z               "line": 13
2026-06-05T00:45:23.0356318Z             },
2026-06-05T00:45:23.0357395Z             {
2026-06-05T00:45:23.0358736Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-05T00:45:23.0360933Z               "line": 27
2026-06-05T00:45:23.0362167Z             },
2026-06-05T00:45:23.0363271Z             {
2026-06-05T00:45:23.0364622Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-05T00:45:23.0366553Z               "line": 94
2026-06-05T00:45:23.0367918Z             },
2026-06-05T00:45:23.0369267Z             {
2026-06-05T00:45:23.0370533Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-05T00:45:23.0372166Z               "line": 393
2026-06-05T00:45:23.0373445Z             },
2026-06-05T00:45:23.0374447Z             {
2026-06-05T00:45:23.0375674Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-05T00:45:23.0377627Z               "line": 460
2026-06-05T00:45:23.0378766Z             },
2026-06-05T00:45:23.0379802Z             {
2026-06-05T00:45:23.0381473Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-05T00:45:23.0383083Z               "line": 494
2026-06-05T00:45:23.0384415Z             },
2026-06-05T00:45:23.0385413Z             {
2026-06-05T00:45:23.0386646Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-05T00:45:23.0388263Z               "line": 536
2026-06-05T00:45:23.0389453Z             },
2026-06-05T00:45:23.0390467Z             {
2026-06-05T00:45:23.0391698Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-05T00:45:23.0393321Z               "line": 581
2026-06-05T00:45:23.0394467Z             },
2026-06-05T00:45:23.0395467Z             {
2026-06-05T00:45:23.0396711Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-05T00:45:23.0398344Z               "line": 10
2026-06-05T00:45:23.0399532Z             }
2026-06-05T00:45:23.0400539Z           ]
2026-06-05T00:45:23.0401488Z         },
2026-06-05T00:45:23.0402442Z         "int": {
2026-06-05T00:45:23.0403530Z           "complete": true,
2026-06-05T00:45:23.0411418Z           "evidence": [
2026-06-05T00:45:23.0412787Z             {
2026-06-05T00:45:23.0414062Z               "path": "crates/spt-daemon/tests/broker.rs",
2026-06-05T00:45:23.0415672Z               "line": 17
2026-06-05T00:45:23.0416804Z             },
2026-06-05T00:45:23.0417797Z             {
2026-06-05T00:45:23.0419088Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-05T00:45:23.0420826Z               "line": 33
2026-06-05T00:45:23.0421960Z             },
2026-06-05T00:45:23.0422956Z             {
2026-06-05T00:45:23.0424180Z               "path": "crates/spt-daemon/tests/handoff.rs",
2026-06-05T00:45:23.0425791Z               "line": 19
2026-06-05T00:45:23.0426911Z             },
2026-06-05T00:45:23.0427889Z             {
2026-06-05T00:45:23.0429141Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-05T00:45:23.0430851Z               "line": 70
2026-06-05T00:45:23.0431969Z             },
2026-06-05T00:45:23.0432975Z             {
2026-06-05T00:45:23.0434232Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-05T00:45:23.0435897Z               "line": 90
2026-06-05T00:45:23.0437019Z             },
2026-06-05T00:45:23.0438008Z             {
2026-06-05T00:45:23.0439302Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-05T00:45:23.0440966Z               "line": 160
2026-06-05T00:45:23.0442098Z             },
2026-06-05T00:45:23.0443087Z             {
2026-06-05T00:45:23.0444337Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-05T00:45:23.0445989Z               "line": 196
2026-06-05T00:45:23.0447118Z             },
2026-06-05T00:45:23.0448096Z             {
2026-06-05T00:45:23.0449382Z               "path": "crates/spt-daemon/tests/netstream.rs",
2026-06-05T00:45:23.0451054Z               "line": 121
2026-06-05T00:45:23.0452207Z             }
2026-06-05T00:45:23.0453183Z           ]
2026-06-05T00:45:23.0454130Z         },
2026-06-05T00:45:23.0455083Z         "unit": {
2026-06-05T00:45:23.0456170Z           "complete": true,
2026-06-05T00:45:23.0457377Z           "evidence": [
2026-06-05T00:45:23.0458492Z             {
2026-06-05T00:45:23.0459718Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-05T00:45:23.0461298Z               "line": 62
2026-06-05T00:45:23.0462427Z             },
2026-06-05T00:45:23.0463495Z             {
2026-06-05T00:45:23.0464705Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-05T00:45:23.0466276Z               "line": 76
2026-06-05T00:45:23.0467408Z             },
2026-06-05T00:45:23.0468414Z             {
2026-06-05T00:45:23.0469646Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-05T00:45:23.0471219Z               "line": 88
2026-06-05T00:45:23.0472376Z             },
2026-06-05T00:45:23.0473369Z             {
2026-06-05T00:45:23.0474576Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-05T00:45:23.0476169Z               "line": 264
2026-06-05T00:45:23.0477322Z             },
2026-06-05T00:45:23.0478651Z             {
2026-06-05T00:45:23.0479874Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-05T00:45:23.0481668Z               "line": 506
2026-06-05T00:45:23.0482829Z             },
2026-06-05T00:45:23.0483824Z             {
2026-06-05T00:45:23.0484997Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-05T00:45:23.0486549Z               "line": 514
2026-06-05T00:45:23.0487698Z             },
2026-06-05T00:45:23.0488696Z             {
2026-06-05T00:45:23.0489910Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-05T00:45:23.0491470Z               "line": 531
2026-06-05T00:45:23.0492627Z             },
2026-06-05T00:45:23.0493613Z             {
2026-06-05T00:45:23.0494789Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-05T00:45:23.0496335Z               "line": 576
2026-06-05T00:45:23.0497486Z             },
2026-06-05T00:45:23.0498484Z             {
2026-06-05T00:45:23.0499743Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-05T00:45:23.0501356Z               "line": 648
2026-06-05T00:45:23.0502496Z             },
2026-06-05T00:45:23.0503517Z             {
2026-06-05T00:45:23.0504747Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-05T00:45:23.0506350Z               "line": 660
2026-06-05T00:45:23.0507491Z             },
2026-06-05T00:45:23.0508491Z             {
2026-06-05T00:45:23.0509764Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-05T00:45:23.0511395Z               "line": 112
2026-06-05T00:45:23.0512535Z             }
2026-06-05T00:45:23.0518755Z           ]
2026-06-05T00:45:23.0519948Z         }
2026-06-05T00:45:23.0520891Z       }
2026-06-05T00:45:23.0521805Z     },
2026-06-05T00:45:23.0522732Z     {
2026-06-05T00:45:23.0523717Z       "id": "REQ-DAEMON-3",
2026-06-05T00:45:23.0525386Z       "title": "Any api invocation auto-starts the daemon if absent",
2026-06-05T00:45:23.0527309Z       "requiredStages": [
2026-06-05T00:45:23.0528499Z         "impl",
2026-06-05T00:45:23.0529616Z         "unit",
2026-06-05T00:45:23.0530620Z         "int"
2026-06-05T00:45:23.0531598Z       ],
2026-06-05T00:45:23.0532561Z       "stages": {
2026-06-05T00:45:23.0533588Z         "doc": {
2026-06-05T00:45:23.0534657Z           "complete": false,
2026-06-05T00:45:23.0535905Z           "evidence": []
2026-06-05T00:45:23.0537034Z         },
2026-06-05T00:45:23.0537982Z         "impl": {
2026-06-05T00:45:23.0539071Z           "complete": true,
2026-06-05T00:45:23.0540326Z           "evidence": [
2026-06-05T00:45:23.0541430Z             {
2026-06-05T00:45:23.0542652Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-05T00:45:23.0544254Z               "line": 14
2026-06-05T00:45:23.0545379Z             },
2026-06-05T00:45:23.0546371Z             {
2026-06-05T00:45:23.0547605Z               "path": "crates/spt-daemon/src/endpoint.rs",
2026-06-05T00:45:23.0549252Z               "line": 11
2026-06-05T00:45:23.0550374Z             },
2026-06-05T00:45:23.0551366Z             {
2026-06-05T00:45:23.0552530Z               "path": "crates/spt/src/api/mod.rs",
2026-06-05T00:45:23.0554069Z               "line": 236
2026-06-05T00:45:23.0555217Z             },
2026-06-05T00:45:23.0556207Z             {
2026-06-05T00:45:23.0557321Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0558833Z               "line": 812
2026-06-05T00:45:23.0560009Z             }
2026-06-05T00:45:23.0560984Z           ]
2026-06-05T00:45:23.0561936Z         },
2026-06-05T00:45:23.0562887Z         "int": {
2026-06-05T00:45:23.0563960Z           "complete": true,
2026-06-05T00:45:23.0565173Z           "evidence": [
2026-06-05T00:45:23.0566282Z             {
2026-06-05T00:45:23.0567499Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-05T00:45:23.0569110Z               "line": 43
2026-06-05T00:45:23.0570280Z             },
2026-06-05T00:45:23.0571270Z             {
2026-06-05T00:45:23.0572485Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-05T00:45:23.0574090Z               "line": 320
2026-06-05T00:45:23.0575535Z             }
2026-06-05T00:45:23.0576525Z           ]
2026-06-05T00:45:23.0577463Z         },
2026-06-05T00:45:23.0578573Z         "unit": {
2026-06-05T00:45:23.0579708Z           "complete": true,
2026-06-05T00:45:23.0580927Z           "evidence": [
2026-06-05T00:45:23.0582027Z             {
2026-06-05T00:45:23.0583234Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-05T00:45:23.0584849Z               "line": 387
2026-06-05T00:45:23.0585990Z             }
2026-06-05T00:45:23.0586960Z           ]
2026-06-05T00:45:23.0587905Z         }
2026-06-05T00:45:23.0588838Z       }
2026-06-05T00:45:23.0589793Z     },
2026-06-05T00:45:23.0590719Z     {
2026-06-05T00:45:23.0591700Z       "id": "REQ-DAEMON-4",
2026-06-05T00:45:23.0593126Z       "title": "Honor every KNOWN-HAZARDS invariant",
2026-06-05T00:45:23.0594766Z       "requiredStages": [
2026-06-05T00:45:23.0595945Z         "impl",
2026-06-05T00:45:23.0596947Z         "unit",
2026-06-05T00:45:23.0597974Z         "int"
2026-06-05T00:45:23.0598958Z       ],
2026-06-05T00:45:23.0599934Z       "stages": {
2026-06-05T00:45:23.0600959Z         "doc": {
2026-06-05T00:45:23.0602048Z           "complete": false,
2026-06-05T00:45:23.0603297Z           "evidence": []
2026-06-05T00:45:23.0604435Z         },
2026-06-05T00:45:23.0605387Z         "impl": {
2026-06-05T00:45:23.0606457Z           "complete": true,
2026-06-05T00:45:23.0607653Z           "evidence": [
2026-06-05T00:45:23.0608770Z             {
2026-06-05T00:45:23.0610187Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.0611831Z               "line": 347
2026-06-05T00:45:23.0612979Z             },
2026-06-05T00:45:23.0618999Z             {
2026-06-05T00:45:23.0620416Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.0622045Z               "line": 409
2026-06-05T00:45:23.0623192Z             },
2026-06-05T00:45:23.0624192Z             {
2026-06-05T00:45:23.0625427Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.0627110Z               "line": 431
2026-06-05T00:45:23.0628253Z             }
2026-06-05T00:45:23.0629284Z           ]
2026-06-05T00:45:23.0630239Z         },
2026-06-05T00:45:23.0631182Z         "int": {
2026-06-05T00:45:23.0632246Z           "complete": true,
2026-06-05T00:45:23.0633456Z           "evidence": [
2026-06-05T00:45:23.0634562Z             {
2026-06-05T00:45:23.0635841Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-05T00:45:23.0637495Z               "line": 34
2026-06-05T00:45:23.0638613Z             }
2026-06-05T00:45:23.0639619Z           ]
2026-06-05T00:45:23.0640570Z         },
2026-06-05T00:45:23.0641522Z         "unit": {
2026-06-05T00:45:23.0642600Z           "complete": true,
2026-06-05T00:45:23.0643808Z           "evidence": [
2026-06-05T00:45:23.0644903Z             {
2026-06-05T00:45:23.0646123Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-05T00:45:23.0647714Z               "line": 353
2026-06-05T00:45:23.0648874Z             },
2026-06-05T00:45:23.0649888Z             {
2026-06-05T00:45:23.0651126Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.0652771Z               "line": 725
2026-06-05T00:45:23.0653920Z             },
2026-06-05T00:45:23.0654908Z             {
2026-06-05T00:45:23.0656150Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.0657794Z               "line": 776
2026-06-05T00:45:23.0658936Z             },
2026-06-05T00:45:23.0659972Z             {
2026-06-05T00:45:23.0661212Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.0662848Z               "line": 800
2026-06-05T00:45:23.0663983Z             },
2026-06-05T00:45:23.0664985Z             {
2026-06-05T00:45:23.0666213Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.0667832Z               "line": 830
2026-06-05T00:45:23.0668974Z             }
2026-06-05T00:45:23.0669984Z           ]
2026-06-05T00:45:23.0671225Z         }
2026-06-05T00:45:23.0672150Z       }
2026-06-05T00:45:23.0673061Z     },
2026-06-05T00:45:23.0673972Z     {
2026-06-05T00:45:23.0675190Z       "id": "REQ-DOCS-1",
2026-06-05T00:45:23.0677100Z       "title": "Dual-audience docs (human + AI dev-agent), markdown once / two depths",
2026-06-05T00:45:23.0679828Z       "requiredStages": [],
2026-06-05T00:45:23.0681249Z       "stages": {
2026-06-05T00:45:23.0682338Z         "doc": {
2026-06-05T00:45:23.0683480Z           "complete": false,
2026-06-05T00:45:23.0684823Z           "evidence": []
2026-06-05T00:45:23.0686011Z         },
2026-06-05T00:45:23.0687031Z         "impl": {
2026-06-05T00:45:23.0688336Z           "complete": false,
2026-06-05T00:45:23.0689966Z           "evidence": []
2026-06-05T00:45:23.0691115Z         },
2026-06-05T00:45:23.0692070Z         "int": {
2026-06-05T00:45:23.0693146Z           "complete": false,
2026-06-05T00:45:23.0694387Z           "evidence": []
2026-06-05T00:45:23.0695521Z         },
2026-06-05T00:45:23.0696488Z         "unit": {
2026-06-05T00:45:23.0697598Z           "complete": false,
2026-06-05T00:45:23.0698834Z           "evidence": []
2026-06-05T00:45:23.0700028Z         }
2026-06-05T00:45:23.0700966Z       }
2026-06-05T00:45:23.0701884Z     },
2026-06-05T00:45:23.0702814Z     {
2026-06-05T00:45:23.0703788Z       "id": "REQ-DOCS-2",
2026-06-05T00:45:23.0705455Z       "title": "Sub-10-minute runnable killer quickstart per audience",
2026-06-05T00:45:23.0707414Z       "requiredStages": [],
2026-06-05T00:45:23.0708635Z       "stages": {
2026-06-05T00:45:23.0709725Z         "doc": {
2026-06-05T00:45:23.0710786Z           "complete": false,
2026-06-05T00:45:23.0712025Z           "evidence": []
2026-06-05T00:45:23.0713178Z         },
2026-06-05T00:45:23.0714140Z         "impl": {
2026-06-05T00:45:23.0715217Z           "complete": false,
2026-06-05T00:45:23.0716457Z           "evidence": []
2026-06-05T00:45:23.0724398Z         },
2026-06-05T00:45:23.0725589Z         "int": {
2026-06-05T00:45:23.0726679Z           "complete": false,
2026-06-05T00:45:23.0727969Z           "evidence": []
2026-06-05T00:45:23.0729338Z         },
2026-06-05T00:45:23.0730306Z         "unit": {
2026-06-05T00:45:23.0731414Z           "complete": false,
2026-06-05T00:45:23.0732664Z           "evidence": []
2026-06-05T00:45:23.0733810Z         }
2026-06-05T00:45:23.0734739Z       }
2026-06-05T00:45:23.0735655Z     },
2026-06-05T00:45:23.0736568Z     {
2026-06-05T00:45:23.0737537Z       "id": "REQ-DOCS-3",
2026-06-05T00:45:23.0739630Z       "title": "Diátaxis structure; one canonical way to do X",
2026-06-05T00:45:23.0741450Z       "requiredStages": [],
2026-06-05T00:45:23.0742662Z       "stages": {
2026-06-05T00:45:23.0743692Z         "doc": {
2026-06-05T00:45:23.0744779Z           "complete": false,
2026-06-05T00:45:23.0746027Z           "evidence": []
2026-06-05T00:45:23.0747164Z         },
2026-06-05T00:45:23.0748132Z         "impl": {
2026-06-05T00:45:23.0749250Z           "complete": false,
2026-06-05T00:45:23.0750494Z           "evidence": []
2026-06-05T00:45:23.0751666Z         },
2026-06-05T00:45:23.0752627Z         "int": {
2026-06-05T00:45:23.0753702Z           "complete": false,
2026-06-05T00:45:23.0754987Z           "evidence": []
2026-06-05T00:45:23.0756118Z         },
2026-06-05T00:45:23.0757060Z         "unit": {
2026-06-05T00:45:23.0758143Z           "complete": false,
2026-06-05T00:45:23.0758596Z           "evidence": []
2026-06-05T00:45:23.0759015Z         }
2026-06-05T00:45:23.0759481Z       }
2026-06-05T00:45:23.0759893Z     },
2026-06-05T00:45:23.0760303Z     {
2026-06-05T00:45:23.0760758Z       "id": "REQ-DOCS-4",
2026-06-05T00:45:23.0761929Z       "title": "Agent-consumable layer (llms.txt, manifest schema, MCP, CLI help)",
2026-06-05T00:45:23.0762418Z       "requiredStages": [],
2026-06-05T00:45:23.0762852Z       "stages": {
2026-06-05T00:45:23.0763285Z         "doc": {
2026-06-05T00:45:23.0763753Z           "complete": false,
2026-06-05T00:45:23.0764216Z           "evidence": []
2026-06-05T00:45:23.0764627Z         },
2026-06-05T00:45:23.0765536Z         "impl": {
2026-06-05T00:45:23.0766007Z           "complete": false,
2026-06-05T00:45:23.0766468Z           "evidence": []
2026-06-05T00:45:23.0767048Z         },
2026-06-05T00:45:23.0767470Z         "int": {
2026-06-05T00:45:23.0767959Z           "complete": false,
2026-06-05T00:45:23.0768409Z           "evidence": []
2026-06-05T00:45:23.0768831Z         },
2026-06-05T00:45:23.0769304Z         "unit": {
2026-06-05T00:45:23.0769801Z           "complete": false,
2026-06-05T00:45:23.0770267Z           "evidence": []
2026-06-05T00:45:23.0770685Z         }
2026-06-05T00:45:23.0771103Z       }
2026-06-05T00:45:23.0771510Z     },
2026-06-05T00:45:23.0771922Z     {
2026-06-05T00:45:23.0772382Z       "id": "REQ-DOCS-5",
2026-06-05T00:45:23.0773579Z       "title": "Anti-drift: rustdoc/schema/exports/CLI-help generated + CI-checked",
2026-06-05T00:45:23.0774077Z       "requiredStages": [],
2026-06-05T00:45:23.0774504Z       "stages": {
2026-06-05T00:45:23.0774935Z         "doc": {
2026-06-05T00:45:23.0775418Z           "complete": false,
2026-06-05T00:45:23.0775883Z           "evidence": []
2026-06-05T00:45:23.0776295Z         },
2026-06-05T00:45:23.0776745Z         "impl": {
2026-06-05T00:45:23.0777219Z           "complete": false,
2026-06-05T00:45:23.0777665Z           "evidence": []
2026-06-05T00:45:23.0778083Z         },
2026-06-05T00:45:23.0778497Z         "int": {
2026-06-05T00:45:23.0778972Z           "complete": false,
2026-06-05T00:45:23.0779508Z           "evidence": []
2026-06-05T00:45:23.0779927Z         },
2026-06-05T00:45:23.0780358Z         "unit": {
2026-06-05T00:45:23.0780825Z           "complete": false,
2026-06-05T00:45:23.0781285Z           "evidence": []
2026-06-05T00:45:23.0781688Z         }
2026-06-05T00:45:23.0782100Z       }
2026-06-05T00:45:23.0782499Z     },
2026-06-05T00:45:23.0782911Z     {
2026-06-05T00:45:23.0783372Z       "id": "REQ-EP-1",
2026-06-05T00:45:23.0784106Z       "title": "Day-one endpoint types; open type system",
2026-06-05T00:45:23.0784588Z       "requiredStages": [
2026-06-05T00:45:23.0785020Z         "impl",
2026-06-05T00:45:23.0785447Z         "unit"
2026-06-05T00:45:23.0785853Z       ],
2026-06-05T00:45:23.0786305Z       "stages": {
2026-06-05T00:45:23.0786728Z         "doc": {
2026-06-05T00:45:23.0787194Z           "complete": false,
2026-06-05T00:45:23.0787663Z           "evidence": []
2026-06-05T00:45:23.0788072Z         },
2026-06-05T00:45:23.0788507Z         "impl": {
2026-06-05T00:45:23.0788967Z           "complete": true,
2026-06-05T00:45:23.0789465Z           "evidence": [
2026-06-05T00:45:23.0789888Z             {
2026-06-05T00:45:23.0790549Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-05T00:45:23.0791002Z               "line": 77
2026-06-05T00:45:23.0791419Z             },
2026-06-05T00:45:23.0791837Z             {
2026-06-05T00:45:23.0792497Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-05T00:45:23.0792955Z               "line": 94
2026-06-05T00:45:23.0793369Z             }
2026-06-05T00:45:23.0793792Z           ]
2026-06-05T00:45:23.0794212Z         },
2026-06-05T00:45:23.0794634Z         "int": {
2026-06-05T00:45:23.0795119Z           "complete": false,
2026-06-05T00:45:23.0795582Z           "evidence": []
2026-06-05T00:45:23.0796002Z         },
2026-06-05T00:45:23.0796433Z         "unit": {
2026-06-05T00:45:23.0796898Z           "complete": true,
2026-06-05T00:45:23.0797347Z           "evidence": [
2026-06-05T00:45:23.0797757Z             {
2026-06-05T00:45:23.0798423Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-05T00:45:23.0798865Z               "line": 161
2026-06-05T00:45:23.0799333Z             },
2026-06-05T00:45:23.0799755Z             {
2026-06-05T00:45:23.0800419Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-05T00:45:23.0800876Z               "line": 178
2026-06-05T00:45:23.0801290Z             }
2026-06-05T00:45:23.0801709Z           ]
2026-06-05T00:45:23.0802113Z         }
2026-06-05T00:45:23.0802523Z       }
2026-06-05T00:45:23.0802933Z     },
2026-06-05T00:45:23.0803529Z     {
2026-06-05T00:45:23.0803993Z       "id": "REQ-EP-2",
2026-06-05T00:45:23.0804956Z       "title": "Agent endpoints vs Shells distinction in the type model",
2026-06-05T00:45:23.0805583Z       "requiredStages": [
2026-06-05T00:45:23.0806010Z         "impl",
2026-06-05T00:45:23.0806430Z         "unit"
2026-06-05T00:45:23.0806844Z       ],
2026-06-05T00:45:23.0807272Z       "stages": {
2026-06-05T00:45:23.0807702Z         "doc": {
2026-06-05T00:45:23.0808170Z           "complete": false,
2026-06-05T00:45:23.0814232Z           "evidence": []
2026-06-05T00:45:23.0814749Z         },
2026-06-05T00:45:23.0815201Z         "impl": {
2026-06-05T00:45:23.0815681Z           "complete": true,
2026-06-05T00:45:23.0816129Z           "evidence": [
2026-06-05T00:45:23.0816547Z             {
2026-06-05T00:45:23.0817233Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-05T00:45:23.0817688Z               "line": 114
2026-06-05T00:45:23.0818101Z             },
2026-06-05T00:45:23.0818563Z             {
2026-06-05T00:45:23.0819315Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-05T00:45:23.0819774Z               "line": 131
2026-06-05T00:45:23.0820218Z             },
2026-06-05T00:45:23.0820628Z             {
2026-06-05T00:45:23.0821299Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-05T00:45:23.0821744Z               "line": 138
2026-06-05T00:45:23.0822174Z             }
2026-06-05T00:45:23.0822591Z           ]
2026-06-05T00:45:23.0823013Z         },
2026-06-05T00:45:23.0823447Z         "int": {
2026-06-05T00:45:23.0823917Z           "complete": false,
2026-06-05T00:45:23.0824374Z           "evidence": []
2026-06-05T00:45:23.0824783Z         },
2026-06-05T00:45:23.0825211Z         "unit": {
2026-06-05T00:45:23.0825684Z           "complete": true,
2026-06-05T00:45:23.0826127Z           "evidence": [
2026-06-05T00:45:23.0826550Z             {
2026-06-05T00:45:23.0827209Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-05T00:45:23.0827683Z               "line": 193
2026-06-05T00:45:23.0828096Z             },
2026-06-05T00:45:23.0828512Z             {
2026-06-05T00:45:23.0829225Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-05T00:45:23.0829679Z               "line": 211
2026-06-05T00:45:23.0830100Z             },
2026-06-05T00:45:23.0830512Z             {
2026-06-05T00:45:23.0831179Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-05T00:45:23.0831631Z               "line": 224
2026-06-05T00:45:23.0832037Z             }
2026-06-05T00:45:23.0832453Z           ]
2026-06-05T00:45:23.0832857Z         }
2026-06-05T00:45:23.0833269Z       }
2026-06-05T00:45:23.0833669Z     },
2026-06-05T00:45:23.0834076Z     {
2026-06-05T00:45:23.0834532Z       "id": "REQ-EP-3",
2026-06-05T00:45:23.0835645Z       "title": "Messaging payloads carry typed operation commands + file blobs",
2026-06-05T00:45:23.0836128Z       "requiredStages": [
2026-06-05T00:45:23.0836544Z         "impl",
2026-06-05T00:45:23.0836968Z         "unit"
2026-06-05T00:45:23.0837390Z       ],
2026-06-05T00:45:23.0837826Z       "stages": {
2026-06-05T00:45:23.0838242Z         "doc": {
2026-06-05T00:45:23.0838737Z           "complete": false,
2026-06-05T00:45:23.0839232Z           "evidence": []
2026-06-05T00:45:23.0839645Z         },
2026-06-05T00:45:23.0840077Z         "impl": {
2026-06-05T00:45:23.0840535Z           "complete": true,
2026-06-05T00:45:23.0840990Z           "evidence": [
2026-06-05T00:45:23.0841409Z             {
2026-06-05T00:45:23.0842076Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-05T00:45:23.0842526Z               "line": 31
2026-06-05T00:45:23.0842940Z             },
2026-06-05T00:45:23.0843354Z             {
2026-06-05T00:45:23.0844011Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-05T00:45:23.0844456Z               "line": 49
2026-06-05T00:45:23.0844863Z             }
2026-06-05T00:45:23.0845281Z           ]
2026-06-05T00:45:23.0845699Z         },
2026-06-05T00:45:23.0846123Z         "int": {
2026-06-05T00:45:23.0846873Z           "complete": false,
2026-06-05T00:45:23.0847327Z           "evidence": []
2026-06-05T00:45:23.0847886Z         },
2026-06-05T00:45:23.0848310Z         "unit": {
2026-06-05T00:45:23.0848784Z           "complete": true,
2026-06-05T00:45:23.0849289Z           "evidence": [
2026-06-05T00:45:23.0849704Z             {
2026-06-05T00:45:23.0850369Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-05T00:45:23.0850819Z               "line": 156
2026-06-05T00:45:23.0851241Z             },
2026-06-05T00:45:23.0851649Z             {
2026-06-05T00:45:23.0852315Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-05T00:45:23.0852771Z               "line": 164
2026-06-05T00:45:23.0853181Z             },
2026-06-05T00:45:23.0853602Z             {
2026-06-05T00:45:23.0854260Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-05T00:45:23.0854715Z               "line": 177
2026-06-05T00:45:23.0855136Z             },
2026-06-05T00:45:23.0855545Z             {
2026-06-05T00:45:23.0856220Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-05T00:45:23.0856659Z               "line": 197
2026-06-05T00:45:23.0857095Z             },
2026-06-05T00:45:23.0857506Z             {
2026-06-05T00:45:23.0858165Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-05T00:45:23.0858627Z               "line": 213
2026-06-05T00:45:23.0859044Z             },
2026-06-05T00:45:23.0859502Z             {
2026-06-05T00:45:23.0860162Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-05T00:45:23.0860623Z               "line": 227
2026-06-05T00:45:23.0861032Z             }
2026-06-05T00:45:23.0861446Z           ]
2026-06-05T00:45:23.0861859Z         }
2026-06-05T00:45:23.0862261Z       }
2026-06-05T00:45:23.0862664Z     },
2026-06-05T00:45:23.0863060Z     {
2026-06-05T00:45:23.0863514Z       "id": "REQ-EP-4",
2026-06-05T00:45:23.0864339Z       "title": "PresenceChannel broker endpoint (seam day-one)",
2026-06-05T00:45:23.0864820Z       "requiredStages": [
2026-06-05T00:45:23.0865265Z         "impl",
2026-06-05T00:45:23.0865682Z         "unit"
2026-06-05T00:45:23.0866094Z       ],
2026-06-05T00:45:23.0866535Z       "stages": {
2026-06-05T00:45:23.0866961Z         "doc": {
2026-06-05T00:45:23.0867424Z           "complete": false,
2026-06-05T00:45:23.0867884Z           "evidence": []
2026-06-05T00:45:23.0868298Z         },
2026-06-05T00:45:23.0868723Z         "impl": {
2026-06-05T00:45:23.0869230Z           "complete": true,
2026-06-05T00:45:23.0869677Z           "evidence": [
2026-06-05T00:45:23.0870101Z             {
2026-06-05T00:45:23.0870733Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-05T00:45:23.0871194Z               "line": 419
2026-06-05T00:45:23.0871626Z             },
2026-06-05T00:45:23.0872034Z             {
2026-06-05T00:45:23.0872665Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-05T00:45:23.0873115Z               "line": 631
2026-06-05T00:45:23.0873533Z             },
2026-06-05T00:45:23.0873963Z             {
2026-06-05T00:45:23.0874615Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-05T00:45:23.0875068Z               "line": 705
2026-06-05T00:45:23.0875495Z             },
2026-06-05T00:45:23.0875911Z             {
2026-06-05T00:45:23.0876513Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-05T00:45:23.0876963Z               "line": 83
2026-06-05T00:45:23.0877380Z             },
2026-06-05T00:45:23.0877796Z             {
2026-06-05T00:45:23.0878405Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-05T00:45:23.0878851Z               "line": 407
2026-06-05T00:45:23.0879307Z             },
2026-06-05T00:45:23.0879721Z             {
2026-06-05T00:45:23.0880335Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-05T00:45:23.0880783Z               "line": 478
2026-06-05T00:45:23.0881208Z             },
2026-06-05T00:45:23.0881620Z             {
2026-06-05T00:45:23.0882268Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-05T00:45:23.0882881Z               "line": 181
2026-06-05T00:45:23.0883300Z             },
2026-06-05T00:45:23.0883720Z             {
2026-06-05T00:45:23.0884573Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-05T00:45:23.0885048Z               "line": 306
2026-06-05T00:45:23.0885468Z             },
2026-06-05T00:45:23.0885877Z             {
2026-06-05T00:45:23.0886534Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-05T00:45:23.0886973Z               "line": 613
2026-06-05T00:45:23.0887393Z             }
2026-06-05T00:45:23.0887806Z           ]
2026-06-05T00:45:23.0888228Z         },
2026-06-05T00:45:23.0888655Z         "int": {
2026-06-05T00:45:23.0889127Z           "complete": false,
2026-06-05T00:45:23.0889631Z           "evidence": []
2026-06-05T00:45:23.0890042Z         },
2026-06-05T00:45:23.0890474Z         "unit": {
2026-06-05T00:45:23.0890932Z           "complete": true,
2026-06-05T00:45:23.0891385Z           "evidence": [
2026-06-05T00:45:23.0896811Z             {
2026-06-05T00:45:23.0897597Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-05T00:45:23.0898063Z               "line": 551
2026-06-05T00:45:23.0898492Z             },
2026-06-05T00:45:23.0898914Z             {
2026-06-05T00:45:23.0899698Z               "path": "crates/spt-daemon/tests/presence.rs",
2026-06-05T00:45:23.0900157Z               "line": 75
2026-06-05T00:45:23.0900579Z             },
2026-06-05T00:45:23.0900986Z             {
2026-06-05T00:45:23.0901679Z               "path": "crates/spt-daemon/tests/presence.rs",
2026-06-05T00:45:23.0902126Z               "line": 131
2026-06-05T00:45:23.0902553Z             }
2026-06-05T00:45:23.0902969Z           ]
2026-06-05T00:45:23.0903384Z         }
2026-06-05T00:45:23.0903987Z       }
2026-06-05T00:45:23.0904470Z     },
2026-06-05T00:45:23.0905100Z     {
2026-06-05T00:45:23.0905572Z       "id": "REQ-EP-5",
2026-06-05T00:45:23.0910199Z       "title": "Concrete shell instantiation model: spawn-mints-instance (vs relink/online), registered-on-node permission + broadcast-is-discovery, per-shell require_approval gate, max_instances_per_owner + over_cap, instance aliasing, discovery scope",
2026-06-05T00:45:23.0910746Z       "requiredStages": [
2026-06-05T00:45:23.0911173Z         "impl",
2026-06-05T00:45:23.0911597Z         "unit"
2026-06-05T00:45:23.0912006Z       ],
2026-06-05T00:45:23.0912444Z       "stages": {
2026-06-05T00:45:23.0912861Z         "doc": {
2026-06-05T00:45:23.0913341Z           "complete": false,
2026-06-05T00:45:23.0913798Z           "evidence": []
2026-06-05T00:45:23.0914206Z         },
2026-06-05T00:45:23.0914636Z         "impl": {
2026-06-05T00:45:23.0915096Z           "complete": true,
2026-06-05T00:45:23.0915544Z           "evidence": [
2026-06-05T00:45:23.0915949Z             {
2026-06-05T00:45:23.0916627Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-05T00:45:23.0917076Z               "line": 18
2026-06-05T00:45:23.0917491Z             },
2026-06-05T00:45:23.0917902Z             {
2026-06-05T00:45:23.0918587Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-05T00:45:23.0919035Z               "line": 58
2026-06-05T00:45:23.0919496Z             },
2026-06-05T00:45:23.0919918Z             {
2026-06-05T00:45:23.0920595Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-05T00:45:23.0921050Z               "line": 101
2026-06-05T00:45:23.0921469Z             },
2026-06-05T00:45:23.0921879Z             {
2026-06-05T00:45:23.0922545Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-05T00:45:23.0922983Z               "line": 22
2026-06-05T00:45:23.0923402Z             },
2026-06-05T00:45:23.0923821Z             {
2026-06-05T00:45:23.0924487Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-05T00:45:23.0924944Z               "line": 129
2026-06-05T00:45:23.0925355Z             },
2026-06-05T00:45:23.0925779Z             {
2026-06-05T00:45:23.0926438Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-05T00:45:23.0926896Z               "line": 156
2026-06-05T00:45:23.0927589Z             },
2026-06-05T00:45:23.0927999Z             {
2026-06-05T00:45:23.0928671Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-05T00:45:23.0929336Z               "line": 178
2026-06-05T00:45:23.0929761Z             },
2026-06-05T00:45:23.0930167Z             {
2026-06-05T00:45:23.0930841Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-05T00:45:23.0931301Z               "line": 203
2026-06-05T00:45:23.0931713Z             },
2026-06-05T00:45:23.0932129Z             {
2026-06-05T00:45:23.0932780Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-05T00:45:23.0933239Z               "line": 226
2026-06-05T00:45:23.0933658Z             },
2026-06-05T00:45:23.0934065Z             {
2026-06-05T00:45:23.0934729Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-05T00:45:23.0935179Z               "line": 246
2026-06-05T00:45:23.0935603Z             },
2026-06-05T00:45:23.0936019Z             {
2026-06-05T00:45:23.0936691Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.0937147Z               "line": 81
2026-06-05T00:45:23.0937569Z             },
2026-06-05T00:45:23.0938052Z             {
2026-06-05T00:45:23.0938597Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0939053Z               "line": 1634
2026-06-05T00:45:23.0939504Z             },
2026-06-05T00:45:23.0939925Z             {
2026-06-05T00:45:23.0940478Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0940924Z               "line": 1751
2026-06-05T00:45:23.0941339Z             },
2026-06-05T00:45:23.0941746Z             {
2026-06-05T00:45:23.0942296Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0942738Z               "line": 1881
2026-06-05T00:45:23.0943161Z             },
2026-06-05T00:45:23.0943575Z             {
2026-06-05T00:45:23.0944117Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0944568Z               "line": 2170
2026-06-05T00:45:23.0944994Z             }
2026-06-05T00:45:23.0945404Z           ]
2026-06-05T00:45:23.0945921Z         },
2026-06-05T00:45:23.0946372Z         "int": {
2026-06-05T00:45:23.0946846Z           "complete": true,
2026-06-05T00:45:23.0947291Z           "evidence": [
2026-06-05T00:45:23.0947704Z             {
2026-06-05T00:45:23.0948304Z               "path": "crates/spt/tests/shell_e2e.rs",
2026-06-05T00:45:23.0948746Z               "line": 15
2026-06-05T00:45:23.0949151Z             }
2026-06-05T00:45:23.0949612Z           ]
2026-06-05T00:45:23.0950022Z         },
2026-06-05T00:45:23.0950434Z         "unit": {
2026-06-05T00:45:23.0950895Z           "complete": true,
2026-06-05T00:45:23.0951331Z           "evidence": [
2026-06-05T00:45:23.0951746Z             {
2026-06-05T00:45:23.0952411Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-05T00:45:23.0952868Z               "line": 149
2026-06-05T00:45:23.0953290Z             },
2026-06-05T00:45:23.0953699Z             {
2026-06-05T00:45:23.0954387Z               "path": "crates/spt-daemon/src/shelldisc.rs",
2026-06-05T00:45:23.0954831Z               "line": 206
2026-06-05T00:45:23.0955259Z             },
2026-06-05T00:45:23.0955668Z             {
2026-06-05T00:45:23.0956325Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-05T00:45:23.0956774Z               "line": 262
2026-06-05T00:45:23.0957183Z             },
2026-06-05T00:45:23.0957596Z             {
2026-06-05T00:45:23.0958250Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-05T00:45:23.0958698Z               "line": 285
2026-06-05T00:45:23.0959106Z             },
2026-06-05T00:45:23.0959570Z             {
2026-06-05T00:45:23.0960213Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.0960657Z               "line": 405
2026-06-05T00:45:23.0961073Z             },
2026-06-05T00:45:23.0961481Z             {
2026-06-05T00:45:23.0962033Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0962479Z               "line": 2586
2026-06-05T00:45:23.0963061Z             },
2026-06-05T00:45:23.0963477Z             {
2026-06-05T00:45:23.0964021Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0964616Z               "line": 2644
2026-06-05T00:45:23.0965028Z             },
2026-06-05T00:45:23.0965447Z             {
2026-06-05T00:45:23.0965994Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0966463Z               "line": 3001
2026-06-05T00:45:23.0966877Z             },
2026-06-05T00:45:23.0967286Z             {
2026-06-05T00:45:23.0967836Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.0968275Z               "line": 3056
2026-06-05T00:45:23.0968688Z             }
2026-06-05T00:45:23.0969093Z           ]
2026-06-05T00:45:23.0969543Z         }
2026-06-05T00:45:23.0969958Z       }
2026-06-05T00:45:23.0970360Z     },
2026-06-05T00:45:23.0970768Z     {
2026-06-05T00:45:23.0971232Z       "id": "REQ-FRONT-1",
2026-06-05T00:45:23.0972256Z       "title": "Day-one launcher/manager frontend (list/launch/attach/init)",
2026-06-05T00:45:23.0972747Z       "requiredStages": [],
2026-06-05T00:45:23.0973176Z       "stages": {
2026-06-05T00:45:23.0973608Z         "doc": {
2026-06-05T00:45:23.0974071Z           "complete": false,
2026-06-05T00:45:23.0974524Z           "evidence": []
2026-06-05T00:45:23.0974930Z         },
2026-06-05T00:45:23.0975362Z         "impl": {
2026-06-05T00:45:23.0975817Z           "complete": false,
2026-06-05T00:45:23.0976308Z           "evidence": []
2026-06-05T00:45:23.0976716Z         },
2026-06-05T00:45:23.0977136Z         "int": {
2026-06-05T00:45:23.0977599Z           "complete": false,
2026-06-05T00:45:23.0978043Z           "evidence": []
2026-06-05T00:45:23.0978460Z         },
2026-06-05T00:45:23.0984064Z         "unit": {
2026-06-05T00:45:23.0984713Z           "complete": false,
2026-06-05T00:45:23.0985174Z           "evidence": []
2026-06-05T00:45:23.0985577Z         }
2026-06-05T00:45:23.0985995Z       }
2026-06-05T00:45:23.0986396Z     },
2026-06-05T00:45:23.0986835Z     {
2026-06-05T00:45:23.0987444Z       "id": "REQ-HAZARD-CASCADE-WIPE-GUARD",
2026-06-05T00:45:23.0988459Z       "title": "No hard-delete of a parent hosting non-empty children (6.3)",
2026-06-05T00:45:23.0988965Z       "requiredStages": [
2026-06-05T00:45:23.0989481Z         "impl",
2026-06-05T00:45:23.0989912Z         "unit"
2026-06-05T00:45:23.0990312Z       ],
2026-06-05T00:45:23.0990747Z       "stages": {
2026-06-05T00:45:23.0991163Z         "doc": {
2026-06-05T00:45:23.0991644Z           "complete": false,
2026-06-05T00:45:23.0992093Z           "evidence": []
2026-06-05T00:45:23.0992496Z         },
2026-06-05T00:45:23.0992919Z         "impl": {
2026-06-05T00:45:23.0993376Z           "complete": true,
2026-06-05T00:45:23.0993831Z           "evidence": [
2026-06-05T00:45:23.0994235Z             {
2026-06-05T00:45:23.0994886Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.0995334Z               "line": 131
2026-06-05T00:45:23.0995739Z             },
2026-06-05T00:45:23.0996171Z             {
2026-06-05T00:45:23.0996776Z               "path": "crates/spt/src/api/worker.rs",
2026-06-05T00:45:23.0997227Z               "line": 18
2026-06-05T00:45:23.0997656Z             },
2026-06-05T00:45:23.0998079Z             {
2026-06-05T00:45:23.0998680Z               "path": "crates/spt/src/api/worker.rs",
2026-06-05T00:45:23.0999114Z               "line": 94
2026-06-05T00:45:23.0999579Z             }
2026-06-05T00:45:23.0999991Z           ]
2026-06-05T00:45:23.1000406Z         },
2026-06-05T00:45:23.1000821Z         "int": {
2026-06-05T00:45:23.1001296Z           "complete": false,
2026-06-05T00:45:23.1001742Z           "evidence": []
2026-06-05T00:45:23.1002147Z         },
2026-06-05T00:45:23.1002574Z         "unit": {
2026-06-05T00:45:23.1003029Z           "complete": true,
2026-06-05T00:45:23.1003476Z           "evidence": [
2026-06-05T00:45:23.1003879Z             {
2026-06-05T00:45:23.1004527Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.1004974Z               "line": 461
2026-06-05T00:45:23.1005645Z             },
2026-06-05T00:45:23.1006063Z             {
2026-06-05T00:45:23.1006817Z               "path": "crates/spt/src/api/worker.rs",
2026-06-05T00:45:23.1007276Z               "line": 152
2026-06-05T00:45:23.1007687Z             },
2026-06-05T00:45:23.1008105Z             {
2026-06-05T00:45:23.1008712Z               "path": "crates/spt/src/api/worker.rs",
2026-06-05T00:45:23.1009147Z               "line": 188
2026-06-05T00:45:23.1009633Z             }
2026-06-05T00:45:23.1010059Z           ]
2026-06-05T00:45:23.1010473Z         }
2026-06-05T00:45:23.1010875Z       }
2026-06-05T00:45:23.1011284Z     },
2026-06-05T00:45:23.1011692Z     {
2026-06-05T00:45:23.1012331Z       "id": "REQ-HAZARD-CONFLICT-BOTH-PRESERVED",
2026-06-05T00:45:23.1016164Z       "title": "A surfaced concurrent context pair is durably preserved (both versions, tracked artifacts) until a strictly dominating write clears it; no reconcile failure path discards an unmerged version (6.6, ADR-0013)",
2026-06-05T00:45:23.1016665Z       "requiredStages": [
2026-06-05T00:45:23.1017089Z         "impl",
2026-06-05T00:45:23.1017525Z         "unit"
2026-06-05T00:45:23.1017934Z       ],
2026-06-05T00:45:23.1018367Z       "stages": {
2026-06-05T00:45:23.1018781Z         "doc": {
2026-06-05T00:45:23.1019301Z           "complete": false,
2026-06-05T00:45:23.1019749Z           "evidence": []
2026-06-05T00:45:23.1020167Z         },
2026-06-05T00:45:23.1020593Z         "impl": {
2026-06-05T00:45:23.1021047Z           "complete": true,
2026-06-05T00:45:23.1021495Z           "evidence": [
2026-06-05T00:45:23.1021899Z             {
2026-06-05T00:45:23.1022575Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-05T00:45:23.1023010Z               "line": 22
2026-06-05T00:45:23.1023428Z             },
2026-06-05T00:45:23.1023838Z             {
2026-06-05T00:45:23.1024448Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.1024902Z               "line": 417
2026-06-05T00:45:23.1025328Z             },
2026-06-05T00:45:23.1025741Z             {
2026-06-05T00:45:23.1026381Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-05T00:45:23.1026850Z               "line": 17
2026-06-05T00:45:23.1027271Z             },
2026-06-05T00:45:23.1027685Z             {
2026-06-05T00:45:23.1028337Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-05T00:45:23.1028779Z               "line": 125
2026-06-05T00:45:23.1029237Z             },
2026-06-05T00:45:23.1029654Z             {
2026-06-05T00:45:23.1030365Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.1030813Z               "line": 178
2026-06-05T00:45:23.1031220Z             },
2026-06-05T00:45:23.1031632Z             {
2026-06-05T00:45:23.1032323Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.1032776Z               "line": 206
2026-06-05T00:45:23.1033186Z             },
2026-06-05T00:45:23.1033593Z             {
2026-06-05T00:45:23.1034309Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.1034750Z               "line": 232
2026-06-05T00:45:23.1035179Z             },
2026-06-05T00:45:23.1035590Z             {
2026-06-05T00:45:23.1036252Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-05T00:45:23.1036697Z               "line": 122
2026-06-05T00:45:23.1037100Z             },
2026-06-05T00:45:23.1037510Z             {
2026-06-05T00:45:23.1038164Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-05T00:45:23.1038615Z               "line": 222
2026-06-05T00:45:23.1039029Z             }
2026-06-05T00:45:23.1039494Z           ]
2026-06-05T00:45:23.1039920Z         },
2026-06-05T00:45:23.1040341Z         "int": {
2026-06-05T00:45:23.1040809Z           "complete": false,
2026-06-05T00:45:23.1041254Z           "evidence": []
2026-06-05T00:45:23.1041673Z         },
2026-06-05T00:45:23.1042089Z         "unit": {
2026-06-05T00:45:23.1042551Z           "complete": true,
2026-06-05T00:45:23.1043236Z           "evidence": [
2026-06-05T00:45:23.1043653Z             {
2026-06-05T00:45:23.1044327Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-05T00:45:23.1044910Z               "line": 53
2026-06-05T00:45:23.1045326Z             },
2026-06-05T00:45:23.1045728Z             {
2026-06-05T00:45:23.1046402Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-05T00:45:23.1046844Z               "line": 60
2026-06-05T00:45:23.1047255Z             },
2026-06-05T00:45:23.1047668Z             {
2026-06-05T00:45:23.1048326Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-05T00:45:23.1048770Z               "line": 72
2026-06-05T00:45:23.1049224Z             },
2026-06-05T00:45:23.1049641Z             {
2026-06-05T00:45:23.1050294Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-05T00:45:23.1050739Z               "line": 298
2026-06-05T00:45:23.1051163Z             },
2026-06-05T00:45:23.1051573Z             {
2026-06-05T00:45:23.1052232Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-05T00:45:23.1052689Z               "line": 247
2026-06-05T00:45:23.1053121Z             },
2026-06-05T00:45:23.1053541Z             {
2026-06-05T00:45:23.1054184Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-05T00:45:23.1054633Z               "line": 282
2026-06-05T00:45:23.1055040Z             },
2026-06-05T00:45:23.1055454Z             {
2026-06-05T00:45:23.1056090Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-05T00:45:23.1056538Z               "line": 313
2026-06-05T00:45:23.1056959Z             },
2026-06-05T00:45:23.1057373Z             {
2026-06-05T00:45:23.1058079Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.1058524Z               "line": 613
2026-06-05T00:45:23.1058934Z             },
2026-06-05T00:45:23.1059373Z             {
2026-06-05T00:45:23.1060039Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-05T00:45:23.1060497Z               "line": 383
2026-06-05T00:45:23.1060925Z             },
2026-06-05T00:45:23.1061340Z             {
2026-06-05T00:45:23.1061993Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-05T00:45:23.1062465Z               "line": 420
2026-06-05T00:45:23.1063069Z             }
2026-06-05T00:45:23.1063845Z           ]
2026-06-05T00:45:23.1064289Z         }
2026-06-05T00:45:23.1064849Z       }
2026-06-05T00:45:23.1065262Z     },
2026-06-05T00:45:23.1070798Z     {
2026-06-05T00:45:23.1071503Z       "id": "REQ-HAZARD-CONPTY-DSR",
2026-06-05T00:45:23.1072818Z       "title": "ConPTY reader must auto-answer DSR (ESC[6n) or all child output stalls (5.5)",
2026-06-05T00:45:23.1073309Z       "requiredStages": [
2026-06-05T00:45:23.1073743Z         "impl",
2026-06-05T00:45:23.1074153Z         "unit"
2026-06-05T00:45:23.1074566Z       ],
2026-06-05T00:45:23.1074995Z       "stages": {
2026-06-05T00:45:23.1075423Z         "doc": {
2026-06-05T00:45:23.1075890Z           "complete": false,
2026-06-05T00:45:23.1076351Z           "evidence": []
2026-06-05T00:45:23.1076814Z         },
2026-06-05T00:45:23.1077236Z         "impl": {
2026-06-05T00:45:23.1077719Z           "complete": true,
2026-06-05T00:45:23.1078163Z           "evidence": [
2026-06-05T00:45:23.1078587Z             {
2026-06-05T00:45:23.1079257Z               "path": "crates/spt-term/src/reader.rs",
2026-06-05T00:45:23.1079714Z               "line": 164
2026-06-05T00:45:23.1080129Z             }
2026-06-05T00:45:23.1080541Z           ]
2026-06-05T00:45:23.1080958Z         },
2026-06-05T00:45:23.1081378Z         "int": {
2026-06-05T00:45:23.1081845Z           "complete": true,
2026-06-05T00:45:23.1082285Z           "evidence": [
2026-06-05T00:45:23.1082704Z             {
2026-06-05T00:45:23.1083311Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-05T00:45:23.1083746Z               "line": 44
2026-06-05T00:45:23.1084173Z             },
2026-06-05T00:45:23.1084582Z             {
2026-06-05T00:45:23.1085187Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-05T00:45:23.1085908Z               "line": 66
2026-06-05T00:45:23.1086324Z             }
2026-06-05T00:45:23.1086742Z           ]
2026-06-05T00:45:23.1087299Z         },
2026-06-05T00:45:23.1087740Z         "unit": {
2026-06-05T00:45:23.1088213Z           "complete": true,
2026-06-05T00:45:23.1088660Z           "evidence": [
2026-06-05T00:45:23.1089066Z             {
2026-06-05T00:45:23.1089732Z               "path": "crates/spt-term/src/reader.rs",
2026-06-05T00:45:23.1090183Z               "line": 181
2026-06-05T00:45:23.1090590Z             },
2026-06-05T00:45:23.1091007Z             {
2026-06-05T00:45:23.1091616Z               "path": "crates/spt-term/src/reader.rs",
2026-06-05T00:45:23.1092066Z               "line": 233
2026-06-05T00:45:23.1092477Z             },
2026-06-05T00:45:23.1092895Z             {
2026-06-05T00:45:23.1093512Z               "path": "crates/spt-term/src/reader.rs",
2026-06-05T00:45:23.1093953Z               "line": 261
2026-06-05T00:45:23.1094375Z             }
2026-06-05T00:45:23.1094798Z           ]
2026-06-05T00:45:23.1095213Z         }
2026-06-05T00:45:23.1095614Z       }
2026-06-05T00:45:23.1096040Z     },
2026-06-05T00:45:23.1096450Z     {
2026-06-05T00:45:23.1097069Z       "id": "REQ-HAZARD-DAEMON-HOSTED-LIVENESS",
2026-06-05T00:45:23.1099904Z       "title": "Daemon-hosted perches (Psyche, spt-hosted Self) derive liveness from the daemon endpoint table + info.json status, never is_process_alive(info.pid) (2.5)",
2026-06-05T00:45:23.1100387Z       "requiredStages": [
2026-06-05T00:45:23.1100818Z         "impl",
2026-06-05T00:45:23.1101239Z         "unit",
2026-06-05T00:45:23.1101651Z         "int"
2026-06-05T00:45:23.1102063Z       ],
2026-06-05T00:45:23.1102490Z       "stages": {
2026-06-05T00:45:23.1102911Z         "doc": {
2026-06-05T00:45:23.1103379Z           "complete": false,
2026-06-05T00:45:23.1103833Z           "evidence": []
2026-06-05T00:45:23.1104246Z         },
2026-06-05T00:45:23.1104667Z         "impl": {
2026-06-05T00:45:23.1105129Z           "complete": true,
2026-06-05T00:45:23.1105589Z           "evidence": [
2026-06-05T00:45:23.1106008Z             {
2026-06-05T00:45:23.1106684Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.1107138Z               "line": 150
2026-06-05T00:45:23.1107560Z             },
2026-06-05T00:45:23.1107966Z             {
2026-06-05T00:45:23.1108648Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.1109093Z               "line": 169
2026-06-05T00:45:23.1109553Z             },
2026-06-05T00:45:23.1109962Z             {
2026-06-05T00:45:23.1110579Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.1111027Z               "line": 79
2026-06-05T00:45:23.1111433Z             },
2026-06-05T00:45:23.1111850Z             {
2026-06-05T00:45:23.1112422Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-05T00:45:23.1112868Z               "line": 51
2026-06-05T00:45:23.1113280Z             },
2026-06-05T00:45:23.1113690Z             {
2026-06-05T00:45:23.1114309Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.1114768Z               "line": 154
2026-06-05T00:45:23.1115215Z             },
2026-06-05T00:45:23.1115618Z             {
2026-06-05T00:45:23.1116283Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-05T00:45:23.1116720Z               "line": 27
2026-06-05T00:45:23.1117141Z             },
2026-06-05T00:45:23.1117554Z             {
2026-06-05T00:45:23.1118201Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-05T00:45:23.1118650Z               "line": 79
2026-06-05T00:45:23.1119060Z             },
2026-06-05T00:45:23.1119511Z             {
2026-06-05T00:45:23.1120178Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-05T00:45:23.1120636Z               "line": 102
2026-06-05T00:45:23.1121052Z             },
2026-06-05T00:45:23.1121458Z             {
2026-06-05T00:45:23.1122103Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.1122541Z               "line": 108
2026-06-05T00:45:23.1123146Z             }
2026-06-05T00:45:23.1123556Z           ]
2026-06-05T00:45:23.1123975Z         },
2026-06-05T00:45:23.1124540Z         "int": {
2026-06-05T00:45:23.1125007Z           "complete": true,
2026-06-05T00:45:23.1125461Z           "evidence": [
2026-06-05T00:45:23.1125870Z             {
2026-06-05T00:45:23.1126590Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-05T00:45:23.1127029Z               "line": 35
2026-06-05T00:45:23.1127446Z             }
2026-06-05T00:45:23.1127866Z           ]
2026-06-05T00:45:23.1128270Z         },
2026-06-05T00:45:23.1128702Z         "unit": {
2026-06-05T00:45:23.1129207Z           "complete": true,
2026-06-05T00:45:23.1129668Z           "evidence": [
2026-06-05T00:45:23.1130074Z             {
2026-06-05T00:45:23.1130750Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.1131204Z               "line": 552
2026-06-05T00:45:23.1131618Z             },
2026-06-05T00:45:23.1132047Z             {
2026-06-05T00:45:23.1132646Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.1133105Z               "line": 330
2026-06-05T00:45:23.1133534Z             },
2026-06-05T00:45:23.1133941Z             {
2026-06-05T00:45:23.1134590Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-05T00:45:23.1135030Z               "line": 124
2026-06-05T00:45:23.1135446Z             },
2026-06-05T00:45:23.1135849Z             {
2026-06-05T00:45:23.1136504Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-05T00:45:23.1136965Z               "line": 136
2026-06-05T00:45:23.1137372Z             },
2026-06-05T00:45:23.1137792Z             {
2026-06-05T00:45:23.1138435Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-05T00:45:23.1138888Z               "line": 146
2026-06-05T00:45:23.1139329Z             },
2026-06-05T00:45:23.1139753Z             {
2026-06-05T00:45:23.1140405Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-05T00:45:23.1140863Z               "line": 159
2026-06-05T00:45:23.1141282Z             },
2026-06-05T00:45:23.1141689Z             {
2026-06-05T00:45:23.1142359Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-05T00:45:23.1142806Z               "line": 171
2026-06-05T00:45:23.1143227Z             },
2026-06-05T00:45:23.1143655Z             {
2026-06-05T00:45:23.1144665Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.1145332Z               "line": 207
2026-06-05T00:45:23.1145826Z             }
2026-06-05T00:45:23.1146340Z           ]
2026-06-05T00:45:23.1146799Z         }
2026-06-05T00:45:23.1147368Z       }
2026-06-05T00:45:23.1147787Z     },
2026-06-05T00:45:23.1148186Z     {
2026-06-05T00:45:23.1148860Z       "id": "REQ-HAZARD-DAEMON-SCHED-NONBLOCKING",
2026-06-05T00:45:23.1153409Z       "title": "Per-agent pulse/psyche/echo-commune scheduling must not serialize across agents: each agent's bounded LLM call (echo-commune summarizer, Psyche turn) runs off the shared scheduler so one slow/hung call cannot stall another agent's tick (7.4)",
2026-06-05T00:45:23.1153941Z       "requiredStages": [
2026-06-05T00:45:23.1154390Z         "impl",
2026-06-05T00:45:23.1154801Z         "unit"
2026-06-05T00:45:23.1155214Z       ],
2026-06-05T00:45:23.1161460Z       "stages": {
2026-06-05T00:45:23.1162087Z         "doc": {
2026-06-05T00:45:23.1162578Z           "complete": false,
2026-06-05T00:45:23.1163041Z           "evidence": []
2026-06-05T00:45:23.1163471Z         },
2026-06-05T00:45:23.1163903Z         "impl": {
2026-06-05T00:45:23.1164376Z           "complete": true,
2026-06-05T00:45:23.1164826Z           "evidence": [
2026-06-05T00:45:23.1165249Z             {
2026-06-05T00:45:23.1165908Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-05T00:45:23.1166362Z               "line": 222
2026-06-05T00:45:23.1166789Z             },
2026-06-05T00:45:23.1167193Z             {
2026-06-05T00:45:23.1167842Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-05T00:45:23.1168643Z               "line": 382
2026-06-05T00:45:23.1169059Z             }
2026-06-05T00:45:23.1169546Z           ]
2026-06-05T00:45:23.1170134Z         },
2026-06-05T00:45:23.1170566Z         "int": {
2026-06-05T00:45:23.1171035Z           "complete": false,
2026-06-05T00:45:23.1171500Z           "evidence": []
2026-06-05T00:45:23.1171909Z         },
2026-06-05T00:45:23.1172331Z         "unit": {
2026-06-05T00:45:23.1172785Z           "complete": true,
2026-06-05T00:45:23.1173231Z           "evidence": [
2026-06-05T00:45:23.1173651Z             {
2026-06-05T00:45:23.1174355Z               "path": "crates/spt-daemon/tests/shellchan.rs",
2026-06-05T00:45:23.1174810Z               "line": 149
2026-06-05T00:45:23.1175220Z             }
2026-06-05T00:45:23.1175641Z           ]
2026-06-05T00:45:23.1176048Z         }
2026-06-05T00:45:23.1176459Z       }
2026-06-05T00:45:23.1176868Z     },
2026-06-05T00:45:23.1177265Z     {
2026-06-05T00:45:23.1177812Z       "id": "REQ-HAZARD-DEFERRED-DRAIN",
2026-06-05T00:45:23.1178913Z       "title": "Deferred spool rows excluded from the event-stream drain (1.4)",
2026-06-05T00:45:23.1179446Z       "requiredStages": [
2026-06-05T00:45:23.1179874Z         "impl",
2026-06-05T00:45:23.1180295Z         "unit"
2026-06-05T00:45:23.1180708Z       ],
2026-06-05T00:45:23.1181131Z       "stages": {
2026-06-05T00:45:23.1181555Z         "doc": {
2026-06-05T00:45:23.1182018Z           "complete": false,
2026-06-05T00:45:23.1182478Z           "evidence": []
2026-06-05T00:45:23.1182883Z         },
2026-06-05T00:45:23.1183314Z         "impl": {
2026-06-05T00:45:23.1183785Z           "complete": true,
2026-06-05T00:45:23.1184235Z           "evidence": [
2026-06-05T00:45:23.1184676Z             {
2026-06-05T00:45:23.1185311Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.1185761Z               "line": 40
2026-06-05T00:45:23.1186171Z             },
2026-06-05T00:45:23.1186588Z             {
2026-06-05T00:45:23.1187201Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.1187656Z               "line": 98
2026-06-05T00:45:23.1188067Z             },
2026-06-05T00:45:23.1188486Z             {
2026-06-05T00:45:23.1189106Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.1189599Z               "line": 209
2026-06-05T00:45:23.1190019Z             },
2026-06-05T00:45:23.1190440Z             {
2026-06-05T00:45:23.1191059Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.1191511Z               "line": 291
2026-06-05T00:45:23.1191914Z             }
2026-06-05T00:45:23.1192334Z           ]
2026-06-05T00:45:23.1192744Z         },
2026-06-05T00:45:23.1193170Z         "int": {
2026-06-05T00:45:23.1193642Z           "complete": false,
2026-06-05T00:45:23.1194088Z           "evidence": []
2026-06-05T00:45:23.1194502Z         },
2026-06-05T00:45:23.1194918Z         "unit": {
2026-06-05T00:45:23.1195383Z           "complete": true,
2026-06-05T00:45:23.1195824Z           "evidence": [
2026-06-05T00:45:23.1196258Z             {
2026-06-05T00:45:23.1196869Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.1197330Z               "line": 326
2026-06-05T00:45:23.1197753Z             },
2026-06-05T00:45:23.1198158Z             {
2026-06-05T00:45:23.1198778Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.1199264Z               "line": 372
2026-06-05T00:45:23.1199694Z             },
2026-06-05T00:45:23.1200107Z             {
2026-06-05T00:45:23.1200713Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.1201167Z               "line": 413
2026-06-05T00:45:23.1201582Z             },
2026-06-05T00:45:23.1202000Z             {
2026-06-05T00:45:23.1202605Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.1203060Z               "line": 432
2026-06-05T00:45:23.1203470Z             }
2026-06-05T00:45:23.1203874Z           ]
2026-06-05T00:45:23.1204284Z         }
2026-06-05T00:45:23.1204689Z       }
2026-06-05T00:45:23.1205336Z     },
2026-06-05T00:45:23.1205740Z     {
2026-06-05T00:45:23.1206379Z       "id": "REQ-HAZARD-DEFERRED-SURVIVE-DRAIN",
2026-06-05T00:45:23.1207211Z       "title": "Deferred rows survive poll drain (4.4)",
2026-06-05T00:45:23.1207683Z       "requiredStages": [
2026-06-05T00:45:23.1208110Z         "impl",
2026-06-05T00:45:23.1208521Z         "unit"
2026-06-05T00:45:23.1208937Z       ],
2026-06-05T00:45:23.1209411Z       "stages": {
2026-06-05T00:45:23.1209844Z         "doc": {
2026-06-05T00:45:23.1210317Z           "complete": false,
2026-06-05T00:45:23.1210759Z           "evidence": []
2026-06-05T00:45:23.1211178Z         },
2026-06-05T00:45:23.1211600Z         "impl": {
2026-06-05T00:45:23.1212068Z           "complete": true,
2026-06-05T00:45:23.1212512Z           "evidence": [
2026-06-05T00:45:23.1212933Z             {
2026-06-05T00:45:23.1213551Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.1213992Z               "line": 111
2026-06-05T00:45:23.1214412Z             },
2026-06-05T00:45:23.1214824Z             {
2026-06-05T00:45:23.1215439Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.1215896Z               "line": 202
2026-06-05T00:45:23.1216317Z             }
2026-06-05T00:45:23.1216732Z           ]
2026-06-05T00:45:23.1217134Z         },
2026-06-05T00:45:23.1217560Z         "int": {
2026-06-05T00:45:23.1218026Z           "complete": false,
2026-06-05T00:45:23.1218479Z           "evidence": []
2026-06-05T00:45:23.1218892Z         },
2026-06-05T00:45:23.1219354Z         "unit": {
2026-06-05T00:45:23.1219824Z           "complete": true,
2026-06-05T00:45:23.1220262Z           "evidence": [
2026-06-05T00:45:23.1220681Z             {
2026-06-05T00:45:23.1221292Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.1221744Z               "line": 347
2026-06-05T00:45:23.1222155Z             },
2026-06-05T00:45:23.1222568Z             {
2026-06-05T00:45:23.1223174Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.1223635Z               "line": 391
2026-06-05T00:45:23.1224060Z             }
2026-06-05T00:45:23.1224470Z           ]
2026-06-05T00:45:23.1224905Z         }
2026-06-05T00:45:23.1225309Z       }
2026-06-05T00:45:23.1225714Z     },
2026-06-05T00:45:23.1226119Z     {
2026-06-05T00:45:23.1226742Z       "id": "REQ-HAZARD-DETACHED-PIPE-INHERIT",
2026-06-05T00:45:23.1233861Z       "title": "Windows detached long-lived children must not inherit a captured caller's pipe: every detach-spawn of an immortal child (daemon, shell binary) runs bInheritHandles=FALSE, or a caller capturing output anywhere up the process chain hangs forever on a pipe that never EOFs — std-handle flag stripping is NOT sufficient (grandparent strays still flow) (5.6)",
2026-06-05T00:45:23.1234368Z       "requiredStages": [
2026-06-05T00:45:23.1234799Z         "impl",
2026-06-05T00:45:23.1235219Z         "unit"
2026-06-05T00:45:23.1235624Z       ],
2026-06-05T00:45:23.1236062Z       "stages": {
2026-06-05T00:45:23.1236482Z         "doc": {
2026-06-05T00:45:23.1236991Z           "complete": true,
2026-06-05T00:45:23.1237429Z           "evidence": [
2026-06-05T00:45:23.1237875Z             {
2026-06-05T00:45:23.1238443Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-05T00:45:23.1238883Z               "line": 188
2026-06-05T00:45:23.1239336Z             }
2026-06-05T00:45:23.1239753Z           ]
2026-06-05T00:45:23.1240171Z         },
2026-06-05T00:45:23.1240598Z         "impl": {
2026-06-05T00:45:23.1241093Z           "complete": true,
2026-06-05T00:45:23.1241881Z           "evidence": [
2026-06-05T00:45:23.1242466Z             {
2026-06-05T00:45:23.1243250Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-05T00:45:23.1243812Z               "line": 237
2026-06-05T00:45:23.1244360Z             },
2026-06-05T00:45:23.1244882Z             {
2026-06-05T00:45:23.1254597Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-05T00:45:23.1255377Z               "line": 327
2026-06-05T00:45:23.1255850Z             },
2026-06-05T00:45:23.1257001Z             {
2026-06-05T00:45:23.1257722Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.1258426Z               "line": 173
2026-06-05T00:45:23.1258858Z             }
2026-06-05T00:45:23.1259566Z           ]
2026-06-05T00:45:23.1260159Z         },
2026-06-05T00:45:23.1260600Z         "int": {
2026-06-05T00:45:23.1261084Z           "complete": false,
2026-06-05T00:45:23.1261579Z           "evidence": []
2026-06-05T00:45:23.1262015Z         },
2026-06-05T00:45:23.1262586Z         "unit": {
2026-06-05T00:45:23.1263079Z           "complete": true,
2026-06-05T00:45:23.1263548Z           "evidence": [
2026-06-05T00:45:23.1263988Z             {
2026-06-05T00:45:23.1264664Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-05T00:45:23.1265151Z               "line": 365
2026-06-05T00:45:23.1265595Z             },
2026-06-05T00:45:23.1266027Z             {
2026-06-05T00:45:23.1266664Z               "path": "crates/spt/tests/shell_e2e.rs",
2026-06-05T00:45:23.1267156Z               "line": 54
2026-06-05T00:45:23.1267579Z             }
2026-06-05T00:45:23.1268018Z           ]
2026-06-05T00:45:23.1268451Z         }
2026-06-05T00:45:23.1268887Z       }
2026-06-05T00:45:23.1269365Z     },
2026-06-05T00:45:23.1269790Z     {
2026-06-05T00:45:23.1270454Z       "id": "REQ-HAZARD-DIRECT-WRITE-PRECEDENCE",
2026-06-05T00:45:23.1271793Z       "title": "Direct-write precedence marker (with node id) guards stale overwrite (6.5)",
2026-06-05T00:45:23.1272296Z       "requiredStages": [
2026-06-05T00:45:23.1272735Z         "impl",
2026-06-05T00:45:23.1273170Z         "unit"
2026-06-05T00:45:23.1273590Z       ],
2026-06-05T00:45:23.1274036Z       "stages": {
2026-06-05T00:45:23.1274465Z         "doc": {
2026-06-05T00:45:23.1274963Z           "complete": false,
2026-06-05T00:45:23.1275436Z           "evidence": []
2026-06-05T00:45:23.1275858Z         },
2026-06-05T00:45:23.1276324Z         "impl": {
2026-06-05T00:45:23.1276814Z           "complete": true,
2026-06-05T00:45:23.1277329Z           "evidence": [
2026-06-05T00:45:23.1277775Z             {
2026-06-05T00:45:23.1278479Z               "path": "crates/spt-live/src/context.rs",
2026-06-05T00:45:23.1279003Z               "line": 26
2026-06-05T00:45:23.1279655Z             },
2026-06-05T00:45:23.1280163Z             {
2026-06-05T00:45:23.1280899Z               "path": "crates/spt-live/src/context.rs",
2026-06-05T00:45:23.1281760Z               "line": 126
2026-06-05T00:45:23.1282255Z             },
2026-06-05T00:45:23.1282799Z             {
2026-06-05T00:45:23.1283645Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-05T00:45:23.1284190Z               "line": 26
2026-06-05T00:45:23.1284674Z             },
2026-06-05T00:45:23.1285134Z             {
2026-06-05T00:45:23.1285926Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-05T00:45:23.1286475Z               "line": 233
2026-06-05T00:45:23.1286958Z             }
2026-06-05T00:45:23.1287432Z           ]
2026-06-05T00:45:23.1288049Z         },
2026-06-05T00:45:23.1288476Z         "int": {
2026-06-05T00:45:23.1288940Z           "complete": false,
2026-06-05T00:45:23.1289771Z           "evidence": []
2026-06-05T00:45:23.1290193Z         },
2026-06-05T00:45:23.1290625Z         "unit": {
2026-06-05T00:45:23.1291098Z           "complete": true,
2026-06-05T00:45:23.1291538Z           "evidence": [
2026-06-05T00:45:23.1291965Z             {
2026-06-05T00:45:23.1292595Z               "path": "crates/spt-live/src/context.rs",
2026-06-05T00:45:23.1293054Z               "line": 152
2026-06-05T00:45:23.1293466Z             },
2026-06-05T00:45:23.1293887Z             {
2026-06-05T00:45:23.1294648Z               "path": "crates/spt-live/src/context.rs",
2026-06-05T00:45:23.1295242Z               "line": 161
2026-06-05T00:45:23.1295663Z             },
2026-06-05T00:45:23.1296070Z             {
2026-06-05T00:45:23.1296700Z               "path": "crates/spt-live/src/context.rs",
2026-06-05T00:45:23.1297146Z               "line": 170
2026-06-05T00:45:23.1297902Z             },
2026-06-05T00:45:23.1298332Z             {
2026-06-05T00:45:23.1298954Z               "path": "crates/spt-live/src/context.rs",
2026-06-05T00:45:23.1299621Z               "line": 179
2026-06-05T00:45:23.1300045Z             },
2026-06-05T00:45:23.1300466Z             {
2026-06-05T00:45:23.1301082Z               "path": "crates/spt-live/src/context.rs",
2026-06-05T00:45:23.1301535Z               "line": 188
2026-06-05T00:45:23.1301963Z             },
2026-06-05T00:45:23.1302367Z             {
2026-06-05T00:45:23.1302984Z               "path": "crates/spt-live/src/context.rs",
2026-06-05T00:45:23.1303421Z               "line": 205
2026-06-05T00:45:23.1303839Z             },
2026-06-05T00:45:23.1304246Z             {
2026-06-05T00:45:23.1304872Z               "path": "crates/spt-live/src/context.rs",
2026-06-05T00:45:23.1305331Z               "line": 231
2026-06-05T00:45:23.1305743Z             },
2026-06-05T00:45:23.1306161Z             {
2026-06-05T00:45:23.1306768Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-05T00:45:23.1307238Z               "line": 245
2026-06-05T00:45:23.1307656Z             },
2026-06-05T00:45:23.1308079Z             {
2026-06-05T00:45:23.1308703Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-05T00:45:23.1309186Z               "line": 212
2026-06-05T00:45:23.1309620Z             },
2026-06-05T00:45:23.1310031Z             {
2026-06-05T00:45:23.1310732Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-05T00:45:23.1311183Z               "line": 256
2026-06-05T00:45:23.1311598Z             },
2026-06-05T00:45:23.1312015Z             {
2026-06-05T00:45:23.1312697Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-05T00:45:23.1313152Z               "line": 281
2026-06-05T00:45:23.1313560Z             },
2026-06-05T00:45:23.1313981Z             {
2026-06-05T00:45:23.1314675Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-05T00:45:23.1315121Z               "line": 293
2026-06-05T00:45:23.1315556Z             },
2026-06-05T00:45:23.1315964Z             {
2026-06-05T00:45:23.1316653Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-05T00:45:23.1317110Z               "line": 303
2026-06-05T00:45:23.1317538Z             },
2026-06-05T00:45:23.1317957Z             {
2026-06-05T00:45:23.1318624Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-05T00:45:23.1319082Z               "line": 502
2026-06-05T00:45:23.1319533Z             }
2026-06-05T00:45:23.1319955Z           ]
2026-06-05T00:45:23.1320361Z         }
2026-06-05T00:45:23.1320776Z       }
2026-06-05T00:45:23.1321187Z     },
2026-06-05T00:45:23.1321597Z     {
2026-06-05T00:45:23.1322234Z       "id": "REQ-HAZARD-DROP-FILE-SINGLE-WRITER",
2026-06-05T00:45:23.1323055Z       "title": "Drop files are daemon-owned single-writer (6.4)",
2026-06-05T00:45:23.1323552Z       "requiredStages": [
2026-06-05T00:45:23.1323985Z         "impl",
2026-06-05T00:45:23.1324408Z         "unit"
2026-06-05T00:45:23.1324838Z       ],
2026-06-05T00:45:23.1325263Z       "stages": {
2026-06-05T00:45:23.1325689Z         "doc": {
2026-06-05T00:45:23.1326163Z           "complete": false,
2026-06-05T00:45:23.1326624Z           "evidence": []
2026-06-05T00:45:23.1327033Z         },
2026-06-05T00:45:23.1327462Z         "impl": {
2026-06-05T00:45:23.1327929Z           "complete": true,
2026-06-05T00:45:23.1328374Z           "evidence": [
2026-06-05T00:45:23.1328794Z             {
2026-06-05T00:45:23.1329418Z               "path": "crates/spt-live/src/echo.rs",
2026-06-05T00:45:23.1329872Z               "line": 25
2026-06-05T00:45:23.1330284Z             },
2026-06-05T00:45:23.1330699Z             {
2026-06-05T00:45:23.1338762Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-05T00:45:23.1339546Z               "line": 26
2026-06-05T00:45:23.1339994Z             },
2026-06-05T00:45:23.1340422Z             {
2026-06-05T00:45:23.1341075Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-05T00:45:23.1341823Z               "line": 153
2026-06-05T00:45:23.1342249Z             }
2026-06-05T00:45:23.1342669Z           ]
2026-06-05T00:45:23.1343280Z         },
2026-06-05T00:45:23.1343713Z         "int": {
2026-06-05T00:45:23.1344185Z           "complete": false,
2026-06-05T00:45:23.1344645Z           "evidence": []
2026-06-05T00:45:23.1345055Z         },
2026-06-05T00:45:23.1345484Z         "unit": {
2026-06-05T00:45:23.1345959Z           "complete": true,
2026-06-05T00:45:23.1346402Z           "evidence": [
2026-06-05T00:45:23.1346819Z             {
2026-06-05T00:45:23.1347406Z               "path": "crates/spt-live/src/echo.rs",
2026-06-05T00:45:23.1347864Z               "line": 180
2026-06-05T00:45:23.1348274Z             },
2026-06-05T00:45:23.1348689Z             {
2026-06-05T00:45:23.1349327Z               "path": "crates/spt-live/src/echo.rs",
2026-06-05T00:45:23.1349779Z               "line": 205
2026-06-05T00:45:23.1350201Z             },
2026-06-05T00:45:23.1350607Z             {
2026-06-05T00:45:23.1351240Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-05T00:45:23.1351684Z               "line": 180
2026-06-05T00:45:23.1352117Z             }
2026-06-05T00:45:23.1352532Z           ]
2026-06-05T00:45:23.1352938Z         }
2026-06-05T00:45:23.1353350Z       }
2026-06-05T00:45:23.1353746Z     },
2026-06-05T00:45:23.1354156Z     {
2026-06-05T00:45:23.1354678Z       "id": "REQ-HAZARD-EBUSY-RENAME",
2026-06-05T00:45:23.1355622Z       "title": "tmp-write + atomic-rename + retry on Windows EBUSY (5.2)",
2026-06-05T00:45:23.1356108Z       "requiredStages": [
2026-06-05T00:45:23.1356525Z         "impl",
2026-06-05T00:45:23.1356947Z         "unit"
2026-06-05T00:45:23.1357351Z       ],
2026-06-05T00:45:23.1357786Z       "stages": {
2026-06-05T00:45:23.1358206Z         "doc": {
2026-06-05T00:45:23.1358680Z           "complete": false,
2026-06-05T00:45:23.1359130Z           "evidence": []
2026-06-05T00:45:23.1359575Z         },
2026-06-05T00:45:23.1360011Z         "impl": {
2026-06-05T00:45:23.1360470Z           "complete": true,
2026-06-05T00:45:23.1360934Z           "evidence": [
2026-06-05T00:45:23.1361343Z             {
2026-06-05T00:45:23.1361980Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-05T00:45:23.1362428Z               "line": 48
2026-06-05T00:45:23.1362836Z             },
2026-06-05T00:45:23.1363245Z             {
2026-06-05T00:45:23.1363855Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-05T00:45:23.1364299Z               "line": 55
2026-06-05T00:45:23.1364702Z             },
2026-06-05T00:45:23.1365120Z             {
2026-06-05T00:45:23.1365738Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-05T00:45:23.1366178Z               "line": 74
2026-06-05T00:45:23.1366591Z             },
2026-06-05T00:45:23.1366997Z             {
2026-06-05T00:45:23.1367631Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-05T00:45:23.1368071Z               "line": 91
2026-06-05T00:45:23.1368488Z             }
2026-06-05T00:45:23.1368903Z           ]
2026-06-05T00:45:23.1369356Z         },
2026-06-05T00:45:23.1369793Z         "int": {
2026-06-05T00:45:23.1370261Z           "complete": false,
2026-06-05T00:45:23.1370734Z           "evidence": []
2026-06-05T00:45:23.1371143Z         },
2026-06-05T00:45:23.1371571Z         "unit": {
2026-06-05T00:45:23.1372038Z           "complete": true,
2026-06-05T00:45:23.1372475Z           "evidence": [
2026-06-05T00:45:23.1372890Z             {
2026-06-05T00:45:23.1373500Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-05T00:45:23.1373957Z               "line": 149
2026-06-05T00:45:23.1374367Z             },
2026-06-05T00:45:23.1374788Z             {
2026-06-05T00:45:23.1375413Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-05T00:45:23.1375858Z               "line": 163
2026-06-05T00:45:23.1376270Z             },
2026-06-05T00:45:23.1376668Z             {
2026-06-05T00:45:23.1377296Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-05T00:45:23.1377734Z               "line": 173
2026-06-05T00:45:23.1378319Z             },
2026-06-05T00:45:23.1378738Z             {
2026-06-05T00:45:23.1379397Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-05T00:45:23.1380005Z               "line": 191
2026-06-05T00:45:23.1380417Z             },
2026-06-05T00:45:23.1380833Z             {
2026-06-05T00:45:23.1381456Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-05T00:45:23.1381904Z               "line": 204
2026-06-05T00:45:23.1382325Z             }
2026-06-05T00:45:23.1382727Z           ]
2026-06-05T00:45:23.1383138Z         }
2026-06-05T00:45:23.1383540Z       }
2026-06-05T00:45:23.1383951Z     },
2026-06-05T00:45:23.1384349Z     {
2026-06-05T00:45:23.1384967Z       "id": "REQ-HAZARD-ECHO-BEFORE-SIGNOFF",
2026-06-05T00:45:23.1386071Z       "title": "Echo-commune fires before INIT_SIGNOFF on orphan teardown (3.3)",
2026-06-05T00:45:23.1386549Z       "requiredStages": [
2026-06-05T00:45:23.1386973Z         "impl",
2026-06-05T00:45:23.1387381Z         "unit"
2026-06-05T00:45:23.1387808Z       ],
2026-06-05T00:45:23.1388240Z       "stages": {
2026-06-05T00:45:23.1388654Z         "doc": {
2026-06-05T00:45:23.1389144Z           "complete": false,
2026-06-05T00:45:23.1389630Z           "evidence": []
2026-06-05T00:45:23.1390060Z         },
2026-06-05T00:45:23.1390477Z         "impl": {
2026-06-05T00:45:23.1390949Z           "complete": true,
2026-06-05T00:45:23.1391397Z           "evidence": [
2026-06-05T00:45:23.1391803Z             {
2026-06-05T00:45:23.1392482Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.1392929Z               "line": 349
2026-06-05T00:45:23.1393348Z             },
2026-06-05T00:45:23.1393753Z             {
2026-06-05T00:45:23.1394381Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-05T00:45:23.1394833Z               "line": 26
2026-06-05T00:45:23.1395249Z             }
2026-06-05T00:45:23.1395670Z           ]
2026-06-05T00:45:23.1396082Z         },
2026-06-05T00:45:23.1396503Z         "int": {
2026-06-05T00:45:23.1396983Z           "complete": false,
2026-06-05T00:45:23.1397442Z           "evidence": []
2026-06-05T00:45:23.1397870Z         },
2026-06-05T00:45:23.1398288Z         "unit": {
2026-06-05T00:45:23.1398763Z           "complete": true,
2026-06-05T00:45:23.1399271Z           "evidence": [
2026-06-05T00:45:23.1399703Z             {
2026-06-05T00:45:23.1400325Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-05T00:45:23.1400771Z               "line": 139
2026-06-05T00:45:23.1401187Z             },
2026-06-05T00:45:23.1401595Z             {
2026-06-05T00:45:23.1402226Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-05T00:45:23.1402668Z               "line": 182
2026-06-05T00:45:23.1403087Z             }
2026-06-05T00:45:23.1403499Z           ]
2026-06-05T00:45:23.1403914Z         }
2026-06-05T00:45:23.1404318Z       }
2026-06-05T00:45:23.1404718Z     },
2026-06-05T00:45:23.1405125Z     {
2026-06-05T00:45:23.1405740Z       "id": "REQ-HAZARD-ENVELOPE-DECODE-ORDER",
2026-06-05T00:45:23.1406640Z       "title": "Envelope decode order, ampersand decoded last (4.1)",
2026-06-05T00:45:23.1407116Z       "requiredStages": [
2026-06-05T00:45:23.1407559Z         "impl",
2026-06-05T00:45:23.1407981Z         "unit"
2026-06-05T00:45:23.1408385Z       ],
2026-06-05T00:45:23.1408821Z       "stages": {
2026-06-05T00:45:23.1409275Z         "doc": {
2026-06-05T00:45:23.1409750Z           "complete": false,
2026-06-05T00:45:23.1410193Z           "evidence": []
2026-06-05T00:45:23.1410609Z         },
2026-06-05T00:45:23.1411036Z         "impl": {
2026-06-05T00:45:23.1411493Z           "complete": true,
2026-06-05T00:45:23.1411942Z           "evidence": [
2026-06-05T00:45:23.1412350Z             {
2026-06-05T00:45:23.1413021Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-05T00:45:23.1413453Z               "line": 36
2026-06-05T00:45:23.1413871Z             },
2026-06-05T00:45:23.1414285Z             {
2026-06-05T00:45:23.1414940Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-05T00:45:23.1415573Z               "line": 68
2026-06-05T00:45:23.1415983Z             }
2026-06-05T00:45:23.1422220Z           ]
2026-06-05T00:45:23.1422745Z         },
2026-06-05T00:45:23.1423190Z         "int": {
2026-06-05T00:45:23.1423681Z           "complete": false,
2026-06-05T00:45:23.1424130Z           "evidence": []
2026-06-05T00:45:23.1424555Z         },
2026-06-05T00:45:23.1424973Z         "unit": {
2026-06-05T00:45:23.1425447Z           "complete": true,
2026-06-05T00:45:23.1425885Z           "evidence": [
2026-06-05T00:45:23.1426301Z             {
2026-06-05T00:45:23.1426973Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-05T00:45:23.1427418Z               "line": 143
2026-06-05T00:45:23.1427834Z             },
2026-06-05T00:45:23.1428245Z             {
2026-06-05T00:45:23.1428900Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-05T00:45:23.1429401Z               "line": 160
2026-06-05T00:45:23.1429822Z             },
2026-06-05T00:45:23.1430271Z             {
2026-06-05T00:45:23.1430921Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-05T00:45:23.1431381Z               "line": 168
2026-06-05T00:45:23.1431785Z             }
2026-06-05T00:45:23.1432200Z           ]
2026-06-05T00:45:23.1432602Z         }
2026-06-05T00:45:23.1433013Z       }
2026-06-05T00:45:23.1433426Z     },
2026-06-05T00:45:23.1433820Z     {
2026-06-05T00:45:23.1434454Z       "id": "REQ-HAZARD-ENVELOPE-PARSER-SAFE",
2026-06-05T00:45:23.1435460Z       "title": "Two-slice envelope parser is panic-free and tolerant (4.2)",
2026-06-05T00:45:23.1435938Z       "requiredStages": [
2026-06-05T00:45:23.1436357Z         "impl",
2026-06-05T00:45:23.1436774Z         "unit"
2026-06-05T00:45:23.1437184Z       ],
2026-06-05T00:45:23.1437603Z       "stages": {
2026-06-05T00:45:23.1438023Z         "doc": {
2026-06-05T00:45:23.1438492Z           "complete": false,
2026-06-05T00:45:23.1438944Z           "evidence": []
2026-06-05T00:45:23.1439373Z         },
2026-06-05T00:45:23.1439819Z         "impl": {
2026-06-05T00:45:23.1440286Z           "complete": true,
2026-06-05T00:45:23.1440732Z           "evidence": [
2026-06-05T00:45:23.1441157Z             {
2026-06-05T00:45:23.1441796Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-05T00:45:23.1442252Z               "line": 107
2026-06-05T00:45:23.1442659Z             }
2026-06-05T00:45:23.1443075Z           ]
2026-06-05T00:45:23.1443490Z         },
2026-06-05T00:45:23.1443903Z         "int": {
2026-06-05T00:45:23.1444373Z           "complete": false,
2026-06-05T00:45:23.1444822Z           "evidence": []
2026-06-05T00:45:23.1445245Z         },
2026-06-05T00:45:23.1445659Z         "unit": {
2026-06-05T00:45:23.1446122Z           "complete": true,
2026-06-05T00:45:23.1446566Z           "evidence": [
2026-06-05T00:45:23.1446971Z             {
2026-06-05T00:45:23.1447620Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-05T00:45:23.1448059Z               "line": 184
2026-06-05T00:45:23.1448474Z             },
2026-06-05T00:45:23.1448896Z             {
2026-06-05T00:45:23.1449587Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-05T00:45:23.1450054Z               "line": 193
2026-06-05T00:45:23.1450464Z             },
2026-06-05T00:45:23.1450876Z             {
2026-06-05T00:45:23.1451522Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-05T00:45:23.1451974Z               "line": 201
2026-06-05T00:45:23.1452386Z             },
2026-06-05T00:45:23.1452801Z             {
2026-06-05T00:45:23.1453454Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-05T00:45:23.1453897Z               "line": 210
2026-06-05T00:45:23.1454319Z             },
2026-06-05T00:45:23.1454723Z             {
2026-06-05T00:45:23.1455372Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-05T00:45:23.1455815Z               "line": 219
2026-06-05T00:45:23.1456234Z             }
2026-06-05T00:45:23.1456646Z           ]
2026-06-05T00:45:23.1457051Z         }
2026-06-05T00:45:23.1457728Z       }
2026-06-05T00:45:23.1458136Z     },
2026-06-05T00:45:23.1458548Z     {
2026-06-05T00:45:23.1459114Z       "id": "REQ-HAZARD-EPHEMERAL-CLEANUP",
2026-06-05T00:45:23.1460220Z       "title": "Ephemeral perch cleanup on every ring exit path (3.1)",
2026-06-05T00:45:23.1460708Z       "requiredStages": [
2026-06-05T00:45:23.1461125Z         "impl",
2026-06-05T00:45:23.1461545Z         "unit"
2026-06-05T00:45:23.1461948Z       ],
2026-06-05T00:45:23.1462386Z       "stages": {
2026-06-05T00:45:23.1462798Z         "doc": {
2026-06-05T00:45:23.1463266Z           "complete": false,
2026-06-05T00:45:23.1463714Z           "evidence": []
2026-06-05T00:45:23.1464122Z         },
2026-06-05T00:45:23.1464550Z         "impl": {
2026-06-05T00:45:23.1465006Z           "complete": true,
2026-06-05T00:45:23.1465447Z           "evidence": [
2026-06-05T00:45:23.1465856Z             {
2026-06-05T00:45:23.1466441Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-05T00:45:23.1466893Z               "line": 14
2026-06-05T00:45:23.1467317Z             },
2026-06-05T00:45:23.1467728Z             {
2026-06-05T00:45:23.1468300Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-05T00:45:23.1468758Z               "line": 62
2026-06-05T00:45:23.1469207Z             }
2026-06-05T00:45:23.1469623Z           ]
2026-06-05T00:45:23.1470032Z         },
2026-06-05T00:45:23.1470443Z         "int": {
2026-06-05T00:45:23.1470914Z           "complete": false,
2026-06-05T00:45:23.1471356Z           "evidence": []
2026-06-05T00:45:23.1471769Z         },
2026-06-05T00:45:23.1472186Z         "unit": {
2026-06-05T00:45:23.1472659Z           "complete": true,
2026-06-05T00:45:23.1473111Z           "evidence": [
2026-06-05T00:45:23.1473521Z             {
2026-06-05T00:45:23.1474102Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-05T00:45:23.1474547Z               "line": 160
2026-06-05T00:45:23.1474968Z             },
2026-06-05T00:45:23.1475377Z             {
2026-06-05T00:45:23.1475962Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-05T00:45:23.1476430Z               "line": 197
2026-06-05T00:45:23.1476844Z             },
2026-06-05T00:45:23.1477276Z             {
2026-06-05T00:45:23.1477848Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-05T00:45:23.1478298Z               "line": 213
2026-06-05T00:45:23.1478701Z             }
2026-06-05T00:45:23.1479119Z           ]
2026-06-05T00:45:23.1479577Z         }
2026-06-05T00:45:23.1479990Z       }
2026-06-05T00:45:23.1480399Z     },
2026-06-05T00:45:23.1480796Z     {
2026-06-05T00:45:23.1481424Z       "id": "REQ-HAZARD-EVENTPART-REASSEMBLY",
2026-06-05T00:45:23.1482686Z       "title": "EVENT-PART split/reassembly is byte-exact; orphan parts dropped silently",
2026-06-05T00:45:23.1483173Z       "requiredStages": [
2026-06-05T00:45:23.1483600Z         "impl",
2026-06-05T00:45:23.1484013Z         "unit"
2026-06-05T00:45:23.1484428Z       ],
2026-06-05T00:45:23.1484849Z       "stages": {
2026-06-05T00:45:23.1485271Z         "doc": {
2026-06-05T00:45:23.1485746Z           "complete": false,
2026-06-05T00:45:23.1486202Z           "evidence": []
2026-06-05T00:45:23.1486618Z         },
2026-06-05T00:45:23.1487054Z         "impl": {
2026-06-05T00:45:23.1487529Z           "complete": true,
2026-06-05T00:45:23.1487976Z           "evidence": [
2026-06-05T00:45:23.1488392Z             {
2026-06-05T00:45:23.1489010Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-05T00:45:23.1489493Z               "line": 76
2026-06-05T00:45:23.1489916Z             },
2026-06-05T00:45:23.1490324Z             {
2026-06-05T00:45:23.1490944Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-05T00:45:23.1491394Z               "line": 163
2026-06-05T00:45:23.1491810Z             },
2026-06-05T00:45:23.1492213Z             {
2026-06-05T00:45:23.1492830Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-05T00:45:23.1493283Z               "line": 229
2026-06-05T00:45:23.1493701Z             },
2026-06-05T00:45:23.1494115Z             {
2026-06-05T00:45:23.1494898Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-05T00:45:23.1495353Z               "line": 265
2026-06-05T00:45:23.1495929Z             }
2026-06-05T00:45:23.1496349Z           ]
2026-06-05T00:45:23.1496769Z         },
2026-06-05T00:45:23.1497187Z         "int": {
2026-06-05T00:45:23.1497661Z           "complete": false,
2026-06-05T00:45:23.1498111Z           "evidence": []
2026-06-05T00:45:23.1498528Z         },
2026-06-05T00:45:23.1504153Z         "unit": {
2026-06-05T00:45:23.1504763Z           "complete": true,
2026-06-05T00:45:23.1505226Z           "evidence": [
2026-06-05T00:45:23.1505638Z             {
2026-06-05T00:45:23.1506274Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-05T00:45:23.1506718Z               "line": 310
2026-06-05T00:45:23.1507139Z             },
2026-06-05T00:45:23.1507546Z             {
2026-06-05T00:45:23.1508165Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-05T00:45:23.1508620Z               "line": 318
2026-06-05T00:45:23.1509070Z             },
2026-06-05T00:45:23.1509569Z             {
2026-06-05T00:45:23.1510185Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-05T00:45:23.1510653Z               "line": 341
2026-06-05T00:45:23.1511075Z             },
2026-06-05T00:45:23.1511495Z             {
2026-06-05T00:45:23.1512104Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-05T00:45:23.1512545Z               "line": 378
2026-06-05T00:45:23.1512966Z             },
2026-06-05T00:45:23.1513375Z             {
2026-06-05T00:45:23.1513985Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-05T00:45:23.1514440Z               "line": 389
2026-06-05T00:45:23.1514846Z             },
2026-06-05T00:45:23.1515259Z             {
2026-06-05T00:45:23.1515875Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-05T00:45:23.1516327Z               "line": 401
2026-06-05T00:45:23.1516738Z             },
2026-06-05T00:45:23.1517158Z             {
2026-06-05T00:45:23.1517774Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-05T00:45:23.1518227Z               "line": 413
2026-06-05T00:45:23.1518649Z             }
2026-06-05T00:45:23.1519066Z           ]
2026-06-05T00:45:23.1519530Z         }
2026-06-05T00:45:23.1519937Z       }
2026-06-05T00:45:23.1520351Z     },
2026-06-05T00:45:23.1520776Z     {
2026-06-05T00:45:23.1521303Z       "id": "REQ-HAZARD-GEN-START-NOW",
2026-06-05T00:45:23.1522113Z       "title": "gen_start = now() on cold-start and handoff (2.4)",
2026-06-05T00:45:23.1522587Z       "requiredStages": [
2026-06-05T00:45:23.1523016Z         "impl",
2026-06-05T00:45:23.1523433Z         "int"
2026-06-05T00:45:23.1523843Z       ],
2026-06-05T00:45:23.1524277Z       "stages": {
2026-06-05T00:45:23.1524689Z         "doc": {
2026-06-05T00:45:23.1525162Z           "complete": false,
2026-06-05T00:45:23.1525610Z           "evidence": []
2026-06-05T00:45:23.1526020Z         },
2026-06-05T00:45:23.1526442Z         "impl": {
2026-06-05T00:45:23.1526910Z           "complete": true,
2026-06-05T00:45:23.1527368Z           "evidence": [
2026-06-05T00:45:23.1527780Z             {
2026-06-05T00:45:23.1528400Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-05T00:45:23.1528847Z               "line": 22
2026-06-05T00:45:23.1529303Z             }
2026-06-05T00:45:23.1529715Z           ]
2026-06-05T00:45:23.1530133Z         },
2026-06-05T00:45:23.1530556Z         "int": {
2026-06-05T00:45:23.1531011Z           "complete": true,
2026-06-05T00:45:23.1531457Z           "evidence": [
2026-06-05T00:45:23.1531873Z             {
2026-06-05T00:45:23.1532547Z               "path": "crates/spt-daemon/tests/handoff.rs",
2026-06-05T00:45:23.1532983Z               "line": 18
2026-06-05T00:45:23.1533402Z             }
2026-06-05T00:45:23.1533822Z           ]
2026-06-05T00:45:23.1534227Z         },
2026-06-05T00:45:23.1534651Z         "unit": {
2026-06-05T00:45:23.1535111Z           "complete": false,
2026-06-05T00:45:23.1535559Z           "evidence": []
2026-06-05T00:45:23.1535967Z         }
2026-06-05T00:45:23.1536633Z       }
2026-06-05T00:45:23.1537035Z     },
2026-06-05T00:45:23.1537447Z     {
2026-06-05T00:45:23.1538080Z       "id": "REQ-HAZARD-GRACE-BEFORE-SIGNOFF",
2026-06-05T00:45:23.1539386Z       "title": "Grace-period wait completes before composing INIT_SIGNOFF (1.1)",
2026-06-05T00:45:23.1539881Z       "requiredStages": [
2026-06-05T00:45:23.1540308Z         "impl",
2026-06-05T00:45:23.1540735Z         "unit"
2026-06-05T00:45:23.1541150Z       ],
2026-06-05T00:45:23.1541576Z       "stages": {
2026-06-05T00:45:23.1542000Z         "doc": {
2026-06-05T00:45:23.1542460Z           "complete": false,
2026-06-05T00:45:23.1542916Z           "evidence": []
2026-06-05T00:45:23.1543318Z         },
2026-06-05T00:45:23.1543746Z         "impl": {
2026-06-05T00:45:23.1544214Z           "complete": true,
2026-06-05T00:45:23.1544655Z           "evidence": [
2026-06-05T00:45:23.1545069Z             {
2026-06-05T00:45:23.1545734Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.1546203Z               "line": 348
2026-06-05T00:45:23.1546618Z             },
2026-06-05T00:45:23.1547035Z             {
2026-06-05T00:45:23.1547678Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-05T00:45:23.1548125Z               "line": 27
2026-06-05T00:45:23.1548543Z             }
2026-06-05T00:45:23.1548954Z           ]
2026-06-05T00:45:23.1549404Z         },
2026-06-05T00:45:23.1549818Z         "int": {
2026-06-05T00:45:23.1550292Z           "complete": false,
2026-06-05T00:45:23.1550745Z           "evidence": []
2026-06-05T00:45:23.1551159Z         },
2026-06-05T00:45:23.1551578Z         "unit": {
2026-06-05T00:45:23.1552032Z           "complete": true,
2026-06-05T00:45:23.1552475Z           "evidence": [
2026-06-05T00:45:23.1552880Z             {
2026-06-05T00:45:23.1553547Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.1554003Z               "line": 753
2026-06-05T00:45:23.1554423Z             },
2026-06-05T00:45:23.1554840Z             {
2026-06-05T00:45:23.1555481Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-05T00:45:23.1555937Z               "line": 164
2026-06-05T00:45:23.1556366Z             }
2026-06-05T00:45:23.1556780Z           ]
2026-06-05T00:45:23.1557191Z         }
2026-06-05T00:45:23.1557599Z       }
2026-06-05T00:45:23.1558005Z     },
2026-06-05T00:45:23.1558407Z     {
2026-06-05T00:45:23.1559023Z       "id": "REQ-HAZARD-HANDOFF-ARGV-COMPAT",
2026-06-05T00:45:23.1559991Z       "title": "Broker/brain IPC + handoff argv version-tolerant (2.3)",
2026-06-05T00:45:23.1560478Z       "requiredStages": [
2026-06-05T00:45:23.1560911Z         "impl",
2026-06-05T00:45:23.1561323Z         "unit"
2026-06-05T00:45:23.1561738Z       ],
2026-06-05T00:45:23.1562169Z       "stages": {
2026-06-05T00:45:23.1562595Z         "doc": {
2026-06-05T00:45:23.1563064Z           "complete": false,
2026-06-05T00:45:23.1563521Z           "evidence": []
2026-06-05T00:45:23.1563934Z         },
2026-06-05T00:45:23.1564353Z         "impl": {
2026-06-05T00:45:23.1564833Z           "complete": true,
2026-06-05T00:45:23.1565268Z           "evidence": [
2026-06-05T00:45:23.1565677Z             {
2026-06-05T00:45:23.1566314Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-05T00:45:23.1566771Z               "line": 20
2026-06-05T00:45:23.1567192Z             },
2026-06-05T00:45:23.1567597Z             {
2026-06-05T00:45:23.1568217Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-05T00:45:23.1568652Z               "line": 94
2026-06-05T00:45:23.1569075Z             },
2026-06-05T00:45:23.1569520Z             {
2026-06-05T00:45:23.1570196Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-05T00:45:23.1570640Z               "line": 70
2026-06-05T00:45:23.1571051Z             },
2026-06-05T00:45:23.1571469Z             {
2026-06-05T00:45:23.1572131Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-05T00:45:23.1572583Z               "line": 82
2026-06-05T00:45:23.1572991Z             }
2026-06-05T00:45:23.1573582Z           ]
2026-06-05T00:45:23.1573999Z         },
2026-06-05T00:45:23.1574413Z         "int": {
2026-06-05T00:45:23.1575030Z           "complete": false,
2026-06-05T00:45:23.1575480Z           "evidence": []
2026-06-05T00:45:23.1575899Z         },
2026-06-05T00:45:23.1576319Z         "unit": {
2026-06-05T00:45:23.1576784Z           "complete": true,
2026-06-05T00:45:23.1577233Z           "evidence": [
2026-06-05T00:45:23.1577645Z             {
2026-06-05T00:45:23.1578279Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-05T00:45:23.1578728Z               "line": 139
2026-06-05T00:45:23.1579143Z             },
2026-06-05T00:45:23.1579598Z             {
2026-06-05T00:45:23.1580223Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-05T00:45:23.1580675Z               "line": 162
2026-06-05T00:45:23.1586134Z             },
2026-06-05T00:45:23.1586673Z             {
2026-06-05T00:45:23.1587321Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-05T00:45:23.1587824Z               "line": 173
2026-06-05T00:45:23.1588235Z             },
2026-06-05T00:45:23.1588648Z             {
2026-06-05T00:45:23.1589398Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-05T00:45:23.1589876Z               "line": 189
2026-06-05T00:45:23.1590323Z             },
2026-06-05T00:45:23.1590735Z             {
2026-06-05T00:45:23.1591367Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-05T00:45:23.1591814Z               "line": 200
2026-06-05T00:45:23.1592238Z             },
2026-06-05T00:45:23.1592651Z             {
2026-06-05T00:45:23.1593321Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-05T00:45:23.1593780Z               "line": 139
2026-06-05T00:45:23.1594189Z             }
2026-06-05T00:45:23.1594599Z           ]
2026-06-05T00:45:23.1594998Z         }
2026-06-05T00:45:23.1595417Z       }
2026-06-05T00:45:23.1595821Z     },
2026-06-05T00:45:23.1596224Z     {
2026-06-05T00:45:23.1596733Z       "id": "REQ-HAZARD-ID-CHARSET",
2026-06-05T00:45:23.1598269Z       "title": "Addressable-id charset reserves :/@ delimiters; validated at every creation seam (4.6)",
2026-06-05T00:45:23.1598766Z       "requiredStages": [
2026-06-05T00:45:23.1599236Z         "impl",
2026-06-05T00:45:23.1599665Z         "unit"
2026-06-05T00:45:23.1600083Z       ],
2026-06-05T00:45:23.1600510Z       "stages": {
2026-06-05T00:45:23.1600932Z         "doc": {
2026-06-05T00:45:23.1601388Z           "complete": true,
2026-06-05T00:45:23.1601836Z           "evidence": [
2026-06-05T00:45:23.1602245Z             {
2026-06-05T00:45:23.1602814Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-05T00:45:23.1603269Z               "line": 131
2026-06-05T00:45:23.1603677Z             }
2026-06-05T00:45:23.1604084Z           ]
2026-06-05T00:45:23.1604491Z         },
2026-06-05T00:45:23.1604921Z         "impl": {
2026-06-05T00:45:23.1605383Z           "complete": true,
2026-06-05T00:45:23.1605830Z           "evidence": [
2026-06-05T00:45:23.1606239Z             {
2026-06-05T00:45:23.1606847Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-05T00:45:23.1607297Z               "line": 65
2026-06-05T00:45:23.1607719Z             },
2026-06-05T00:45:23.1608136Z             {
2026-06-05T00:45:23.1608710Z               "path": "crates/spt-proto/src/id.rs",
2026-06-05T00:45:23.1609189Z               "line": 17
2026-06-05T00:45:23.1609605Z             },
2026-06-05T00:45:23.1610012Z             {
2026-06-05T00:45:23.1610630Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.1611069Z               "line": 212
2026-06-05T00:45:23.1611484Z             },
2026-06-05T00:45:23.1611892Z             {
2026-06-05T00:45:23.1612505Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.1612957Z               "line": 312
2026-06-05T00:45:23.1613361Z             },
2026-06-05T00:45:23.1613772Z             {
2026-06-05T00:45:23.1614362Z               "path": "crates/spt/src/api/worker.rs",
2026-06-05T00:45:23.1614810Z               "line": 32
2026-06-05T00:45:23.1615482Z             },
2026-06-05T00:45:23.1615890Z             {
2026-06-05T00:45:23.1616446Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.1617041Z               "line": 1719
2026-06-05T00:45:23.1617463Z             },
2026-06-05T00:45:23.1617870Z             {
2026-06-05T00:45:23.1618423Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.1618877Z               "line": 1948
2026-06-05T00:45:23.1619323Z             }
2026-06-05T00:45:23.1619746Z           ]
2026-06-05T00:45:23.1620150Z         },
2026-06-05T00:45:23.1620576Z         "int": {
2026-06-05T00:45:23.1621037Z           "complete": false,
2026-06-05T00:45:23.1621499Z           "evidence": []
2026-06-05T00:45:23.1621903Z         },
2026-06-05T00:45:23.1622330Z         "unit": {
2026-06-05T00:45:23.1622806Z           "complete": true,
2026-06-05T00:45:23.1623246Z           "evidence": [
2026-06-05T00:45:23.1623663Z             {
2026-06-05T00:45:23.1624251Z               "path": "crates/spt-proto/src/id.rs",
2026-06-05T00:45:23.1624715Z               "line": 94
2026-06-05T00:45:23.1625130Z             },
2026-06-05T00:45:23.1625554Z             {
2026-06-05T00:45:23.1626137Z               "path": "crates/spt-proto/src/id.rs",
2026-06-05T00:45:23.1626576Z               "line": 111
2026-06-05T00:45:23.1626992Z             },
2026-06-05T00:45:23.1627394Z             {
2026-06-05T00:45:23.1627976Z               "path": "crates/spt-proto/src/id.rs",
2026-06-05T00:45:23.1628426Z               "line": 124
2026-06-05T00:45:23.1628839Z             },
2026-06-05T00:45:23.1629295Z             {
2026-06-05T00:45:23.1629874Z               "path": "crates/spt-proto/src/id.rs",
2026-06-05T00:45:23.1630327Z               "line": 134
2026-06-05T00:45:23.1630739Z             },
2026-06-05T00:45:23.1631153Z             {
2026-06-05T00:45:23.1631735Z               "path": "crates/spt-proto/src/id.rs",
2026-06-05T00:45:23.1632178Z               "line": 142
2026-06-05T00:45:23.1632591Z             },
2026-06-05T00:45:23.1633015Z             {
2026-06-05T00:45:23.1633598Z               "path": "crates/spt-proto/src/id.rs",
2026-06-05T00:45:23.1634042Z               "line": 154
2026-06-05T00:45:23.1634470Z             },
2026-06-05T00:45:23.1634882Z             {
2026-06-05T00:45:23.1635579Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.1636032Z               "line": 645
2026-06-05T00:45:23.1636438Z             }
2026-06-05T00:45:23.1636849Z           ]
2026-06-05T00:45:23.1637264Z         }
2026-06-05T00:45:23.1637681Z       }
2026-06-05T00:45:23.1638091Z     },
2026-06-05T00:45:23.1638491Z     {
2026-06-05T00:45:23.1639035Z       "id": "REQ-HAZARD-INBOX-NO-DOUBLE",
2026-06-05T00:45:23.1639796Z       "title": "No double-delivery via legacy inbox (4.5)",
2026-06-05T00:45:23.1640286Z       "requiredStages": [
2026-06-05T00:45:23.1640706Z         "impl",
2026-06-05T00:45:23.1641130Z         "unit"
2026-06-05T00:45:23.1641546Z       ],
2026-06-05T00:45:23.1641975Z       "stages": {
2026-06-05T00:45:23.1642409Z         "doc": {
2026-06-05T00:45:23.1642873Z           "complete": false,
2026-06-05T00:45:23.1643328Z           "evidence": []
2026-06-05T00:45:23.1643758Z         },
2026-06-05T00:45:23.1644197Z         "impl": {
2026-06-05T00:45:23.1644661Z           "complete": true,
2026-06-05T00:45:23.1645110Z           "evidence": [
2026-06-05T00:45:23.1645528Z             {
2026-06-05T00:45:23.1646141Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.1646593Z               "line": 128
2026-06-05T00:45:23.1647001Z             }
2026-06-05T00:45:23.1647413Z           ]
2026-06-05T00:45:23.1647828Z         },
2026-06-05T00:45:23.1648244Z         "int": {
2026-06-05T00:45:23.1648720Z           "complete": false,
2026-06-05T00:45:23.1649204Z           "evidence": []
2026-06-05T00:45:23.1649625Z         },
2026-06-05T00:45:23.1650041Z         "unit": {
2026-06-05T00:45:23.1650512Z           "complete": true,
2026-06-05T00:45:23.1650964Z           "evidence": [
2026-06-05T00:45:23.1651591Z             {
2026-06-05T00:45:23.1652212Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.1652797Z               "line": 205
2026-06-05T00:45:23.1653221Z             }
2026-06-05T00:45:23.1653627Z           ]
2026-06-05T00:45:23.1654042Z         }
2026-06-05T00:45:23.1654459Z       }
2026-06-05T00:45:23.1654856Z     },
2026-06-05T00:45:23.1655262Z     {
2026-06-05T00:45:23.1655846Z       "id": "REQ-HAZARD-INFO-JSON-TORN-READ",
2026-06-05T00:45:23.1656687Z       "title": "State-file reads tolerate concurrent writes (1.2)",
2026-06-05T00:45:23.1657155Z       "requiredStages": [
2026-06-05T00:45:23.1657574Z         "impl",
2026-06-05T00:45:23.1657994Z         "unit"
2026-06-05T00:45:23.1658401Z       ],
2026-06-05T00:45:23.1658828Z       "stages": {
2026-06-05T00:45:23.1659280Z         "doc": {
2026-06-05T00:45:23.1659758Z           "complete": false,
2026-06-05T00:45:23.1660203Z           "evidence": []
2026-06-05T00:45:23.1660622Z         },
2026-06-05T00:45:23.1661050Z         "impl": {
2026-06-05T00:45:23.1661519Z           "complete": true,
2026-06-05T00:45:23.1661969Z           "evidence": [
2026-06-05T00:45:23.1662391Z             {
2026-06-05T00:45:23.1668142Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.1668754Z               "line": 231
2026-06-05T00:45:23.1669270Z             },
2026-06-05T00:45:23.1669700Z             {
2026-06-05T00:45:23.1670312Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.1670766Z               "line": 242
2026-06-05T00:45:23.1671186Z             },
2026-06-05T00:45:23.1671605Z             {
2026-06-05T00:45:23.1672199Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.1672653Z               "line": 260
2026-06-05T00:45:23.1673075Z             }
2026-06-05T00:45:23.1673485Z           ]
2026-06-05T00:45:23.1673901Z         },
2026-06-05T00:45:23.1674317Z         "int": {
2026-06-05T00:45:23.1674793Z           "complete": false,
2026-06-05T00:45:23.1675243Z           "evidence": []
2026-06-05T00:45:23.1675705Z         },
2026-06-05T00:45:23.1676131Z         "unit": {
2026-06-05T00:45:23.1676590Z           "complete": true,
2026-06-05T00:45:23.1677056Z           "evidence": [
2026-06-05T00:45:23.1677473Z             {
2026-06-05T00:45:23.1678077Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.1678527Z               "line": 284
2026-06-05T00:45:23.1678944Z             },
2026-06-05T00:45:23.1679397Z             {
2026-06-05T00:45:23.1679995Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.1680449Z               "line": 302
2026-06-05T00:45:23.1680859Z             },
2026-06-05T00:45:23.1681276Z             {
2026-06-05T00:45:23.1681866Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.1682316Z               "line": 467
2026-06-05T00:45:23.1682734Z             },
2026-06-05T00:45:23.1683137Z             {
2026-06-05T00:45:23.1683732Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.1684196Z               "line": 478
2026-06-05T00:45:23.1684612Z             },
2026-06-05T00:45:23.1685011Z             {
2026-06-05T00:45:23.1685638Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.1686150Z               "line": 491
2026-06-05T00:45:23.1686582Z             }
2026-06-05T00:45:23.1686998Z           ]
2026-06-05T00:45:23.1687405Z         }
2026-06-05T00:45:23.1687823Z       }
2026-06-05T00:45:23.1688221Z     },
2026-06-05T00:45:23.1688627Z     {
2026-06-05T00:45:23.1689213Z       "id": "REQ-HAZARD-LOCAL-API-AUTH",
2026-06-05T00:45:23.1690521Z       "title": "Every local `api` mutation authenticated to an endpoint/session (codex #13)",
2026-06-05T00:45:23.1691005Z       "requiredStages": [
2026-06-05T00:45:23.1691423Z         "impl",
2026-06-05T00:45:23.1691840Z         "unit"
2026-06-05T00:45:23.1692246Z       ],
2026-06-05T00:45:23.1692679Z       "stages": {
2026-06-05T00:45:23.1693099Z         "doc": {
2026-06-05T00:45:23.1693559Z           "complete": false,
2026-06-05T00:45:23.1694290Z           "evidence": []
2026-06-05T00:45:23.1694698Z         },
2026-06-05T00:45:23.1695134Z         "impl": {
2026-06-05T00:45:23.1695737Z           "complete": true,
2026-06-05T00:45:23.1696200Z           "evidence": [
2026-06-05T00:45:23.1696614Z             {
2026-06-05T00:45:23.1697194Z               "path": "crates/spt/src/api/auth.rs",
2026-06-05T00:45:23.1697642Z               "line": 14
2026-06-05T00:45:23.1698048Z             },
2026-06-05T00:45:23.1698461Z             {
2026-06-05T00:45:23.1699032Z               "path": "crates/spt/src/api/mod.rs",
2026-06-05T00:45:23.1699539Z               "line": 360
2026-06-05T00:45:23.1699960Z             }
2026-06-05T00:45:23.1700366Z           ]
2026-06-05T00:45:23.1700785Z         },
2026-06-05T00:45:23.1701202Z         "int": {
2026-06-05T00:45:23.1701669Z           "complete": false,
2026-06-05T00:45:23.1702117Z           "evidence": []
2026-06-05T00:45:23.1702533Z         },
2026-06-05T00:45:23.1702954Z         "unit": {
2026-06-05T00:45:23.1703423Z           "complete": true,
2026-06-05T00:45:23.1703871Z           "evidence": [
2026-06-05T00:45:23.1704297Z             {
2026-06-05T00:45:23.1704887Z               "path": "crates/spt/src/api/auth.rs",
2026-06-05T00:45:23.1705328Z               "line": 130
2026-06-05T00:45:23.1705749Z             },
2026-06-05T00:45:23.1706161Z             {
2026-06-05T00:45:23.1706732Z               "path": "crates/spt/src/api/auth.rs",
2026-06-05T00:45:23.1707181Z               "line": 138
2026-06-05T00:45:23.1707592Z             },
2026-06-05T00:45:23.1708009Z             {
2026-06-05T00:45:23.1708585Z               "path": "crates/spt/src/api/auth.rs",
2026-06-05T00:45:23.1709034Z               "line": 146
2026-06-05T00:45:23.1709484Z             },
2026-06-05T00:45:23.1709898Z             {
2026-06-05T00:45:23.1710488Z               "path": "crates/spt/src/api/auth.rs",
2026-06-05T00:45:23.1710931Z               "line": 154
2026-06-05T00:45:23.1711353Z             },
2026-06-05T00:45:23.1711773Z             {
2026-06-05T00:45:23.1712359Z               "path": "crates/spt/src/api/auth.rs",
2026-06-05T00:45:23.1712811Z               "line": 162
2026-06-05T00:45:23.1713236Z             },
2026-06-05T00:45:23.1713648Z             {
2026-06-05T00:45:23.1714230Z               "path": "crates/spt/src/api/auth.rs",
2026-06-05T00:45:23.1714680Z               "line": 170
2026-06-05T00:45:23.1715090Z             }
2026-06-05T00:45:23.1715509Z           ]
2026-06-05T00:45:23.1715918Z         }
2026-06-05T00:45:23.1716319Z       }
2026-06-05T00:45:23.1716725Z     },
2026-06-05T00:45:23.1717125Z     {
2026-06-05T00:45:23.1717680Z       "id": "REQ-HAZARD-PAIR-RATE-LIMIT",
2026-06-05T00:45:23.1723318Z       "title": "Subnet-global pairing rate limit: one active ceremony per subnet, shared attempt counter, exponential backoff — a public pre-trust relay + multiple seed-holders otherwise enables distributed SPAKE2 guessing (and ±1 TOTP window triples the valid-password space) (ADR-0005 #11)",
2026-06-05T00:45:23.1723886Z       "requiredStages": [
2026-06-05T00:45:23.1724327Z         "impl",
2026-06-05T00:45:23.1724741Z         "unit"
2026-06-05T00:45:23.1725184Z       ],
2026-06-05T00:45:23.1725608Z       "stages": {
2026-06-05T00:45:23.1726030Z         "doc": {
2026-06-05T00:45:23.1726497Z           "complete": false,
2026-06-05T00:45:23.1726939Z           "evidence": []
2026-06-05T00:45:23.1727357Z         },
2026-06-05T00:45:23.1727775Z         "impl": {
2026-06-05T00:45:23.1728242Z           "complete": true,
2026-06-05T00:45:23.1728682Z           "evidence": [
2026-06-05T00:45:23.1729101Z             {
2026-06-05T00:45:23.1729939Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-05T00:45:23.1730384Z               "line": 34
2026-06-05T00:45:23.1730798Z             }
2026-06-05T00:45:23.1731209Z           ]
2026-06-05T00:45:23.1731620Z         },
2026-06-05T00:45:23.1732039Z         "int": {
2026-06-05T00:45:23.1732514Z           "complete": false,
2026-06-05T00:45:23.1732975Z           "evidence": []
2026-06-05T00:45:23.1733574Z         },
2026-06-05T00:45:23.1734004Z         "unit": {
2026-06-05T00:45:23.1734462Z           "complete": true,
2026-06-05T00:45:23.1735047Z           "evidence": [
2026-06-05T00:45:23.1735461Z             {
2026-06-05T00:45:23.1736260Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-05T00:45:23.1736724Z               "line": 188
2026-06-05T00:45:23.1737132Z             },
2026-06-05T00:45:23.1737545Z             {
2026-06-05T00:45:23.1738324Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-05T00:45:23.1738775Z               "line": 200
2026-06-05T00:45:23.1739220Z             },
2026-06-05T00:45:23.1739639Z             {
2026-06-05T00:45:23.1740417Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-05T00:45:23.1740860Z               "line": 211
2026-06-05T00:45:23.1741281Z             },
2026-06-05T00:45:23.1741680Z             {
2026-06-05T00:45:23.1742461Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-05T00:45:23.1742929Z               "line": 245
2026-06-05T00:45:23.1743354Z             },
2026-06-05T00:45:23.1743772Z             {
2026-06-05T00:45:23.1744544Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-05T00:45:23.1744998Z               "line": 267
2026-06-05T00:45:23.1745410Z             },
2026-06-05T00:45:23.1745832Z             {
2026-06-05T00:45:23.1746623Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-05T00:45:23.1747068Z               "line": 288
2026-06-05T00:45:23.1747489Z             },
2026-06-05T00:45:23.1747891Z             {
2026-06-05T00:45:23.1748670Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-05T00:45:23.1749120Z               "line": 304
2026-06-05T00:45:23.1749574Z             }
2026-06-05T00:45:23.1749990Z           ]
2026-06-05T00:45:23.1750396Z         }
2026-06-05T00:45:23.1756110Z       }
2026-06-05T00:45:23.1756655Z     },
2026-06-05T00:45:23.1757122Z     {
2026-06-05T00:45:23.1757730Z       "id": "REQ-HAZARD-PAIR-SEED-ROTATION",
2026-06-05T00:45:23.1761489Z       "title": "Removing a node rotates the subnet seed (epoch bump) so an old node/old seed cannot rejoin; trust-store delete alone is NOT revocation because the seed is replicated to every trusted node (ADR-0005 #10)",
2026-06-05T00:45:23.1762010Z       "requiredStages": [
2026-06-05T00:45:23.1762440Z         "impl",
2026-06-05T00:45:23.1762866Z         "unit"
2026-06-05T00:45:23.1763269Z       ],
2026-06-05T00:45:23.1763700Z       "stages": {
2026-06-05T00:45:23.1764116Z         "doc": {
2026-06-05T00:45:23.1764597Z           "complete": false,
2026-06-05T00:45:23.1765055Z           "evidence": []
2026-06-05T00:45:23.1765471Z         },
2026-06-05T00:45:23.1765899Z         "impl": {
2026-06-05T00:45:23.1766356Z           "complete": true,
2026-06-05T00:45:23.1766799Z           "evidence": [
2026-06-05T00:45:23.1767202Z             {
2026-06-05T00:45:23.1767828Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.1768298Z               "line": 29
2026-06-05T00:45:23.1768709Z             },
2026-06-05T00:45:23.1769138Z             {
2026-06-05T00:45:23.1769820Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.1770295Z               "line": 154
2026-06-05T00:45:23.1770704Z             },
2026-06-05T00:45:23.1771119Z             {
2026-06-05T00:45:23.1771743Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.1772199Z               "line": 173
2026-06-05T00:45:23.1772620Z             },
2026-06-05T00:45:23.1773023Z             {
2026-06-05T00:45:23.1773646Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.1774093Z               "line": 200
2026-06-05T00:45:23.1774514Z             }
2026-06-05T00:45:23.1774931Z           ]
2026-06-05T00:45:23.1775338Z         },
2026-06-05T00:45:23.1775761Z         "int": {
2026-06-05T00:45:23.1776222Z           "complete": false,
2026-06-05T00:45:23.1776954Z           "evidence": []
2026-06-05T00:45:23.1777371Z         },
2026-06-05T00:45:23.1777802Z         "unit": {
2026-06-05T00:45:23.1778411Z           "complete": true,
2026-06-05T00:45:23.1778852Z           "evidence": [
2026-06-05T00:45:23.1779314Z             {
2026-06-05T00:45:23.1779942Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.1780420Z               "line": 276
2026-06-05T00:45:23.1780837Z             },
2026-06-05T00:45:23.1781254Z             {
2026-06-05T00:45:23.1781870Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.1782316Z               "line": 291
2026-06-05T00:45:23.1782737Z             },
2026-06-05T00:45:23.1783141Z             {
2026-06-05T00:45:23.1783765Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.1784213Z               "line": 310
2026-06-05T00:45:23.1784618Z             },
2026-06-05T00:45:23.1785027Z             {
2026-06-05T00:45:23.1785637Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.1786106Z               "line": 326
2026-06-05T00:45:23.1786523Z             },
2026-06-05T00:45:23.1786963Z             {
2026-06-05T00:45:23.1787588Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.1788041Z               "line": 376
2026-06-05T00:45:23.1788464Z             },
2026-06-05T00:45:23.1788868Z             {
2026-06-05T00:45:23.1791153Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.1791647Z               "line": 390
2026-06-05T00:45:23.1792081Z             },
2026-06-05T00:45:23.1792500Z             {
2026-06-05T00:45:23.1793126Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.1793580Z               "line": 401
2026-06-05T00:45:23.1793990Z             },
2026-06-05T00:45:23.1794413Z             {
2026-06-05T00:45:23.1795025Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.1795486Z               "line": 412
2026-06-05T00:45:23.1795906Z             }
2026-06-05T00:45:23.1796334Z           ]
2026-06-05T00:45:23.1796751Z         }
2026-06-05T00:45:23.1797159Z       }
2026-06-05T00:45:23.1797583Z     },
2026-06-05T00:45:23.1797988Z     {
2026-06-05T00:45:23.1798610Z       "id": "REQ-HAZARD-PAIR-TRANSCRIPT-BIND",
2026-06-05T00:45:23.1802720Z       "title": "Pairing transcript binds roles, both node pubkeys, subnet ID, seed epoch, TOTP time-step, and confirmation MACs — or unknown-key-share/reflection/wrong-subnet/replay pairing remain possible (ADR-0005 #12)",
2026-06-05T00:45:23.1803223Z       "requiredStages": [
2026-06-05T00:45:23.1803650Z         "impl",
2026-06-05T00:45:23.1804068Z         "unit"
2026-06-05T00:45:23.1804481Z       ],
2026-06-05T00:45:23.1804908Z       "stages": {
2026-06-05T00:45:23.1805331Z         "doc": {
2026-06-05T00:45:23.1805804Z           "complete": false,
2026-06-05T00:45:23.1806253Z           "evidence": []
2026-06-05T00:45:23.1806673Z         },
2026-06-05T00:45:23.1807092Z         "impl": {
2026-06-05T00:45:23.1807569Z           "complete": true,
2026-06-05T00:45:23.1808051Z           "evidence": [
2026-06-05T00:45:23.1808473Z             {
2026-06-05T00:45:23.1809277Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.1809728Z               "line": 27
2026-06-05T00:45:23.1810143Z             },
2026-06-05T00:45:23.1810549Z             {
2026-06-05T00:45:23.1811269Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.1811715Z               "line": 110
2026-06-05T00:45:23.1812122Z             },
2026-06-05T00:45:23.1812532Z             {
2026-06-05T00:45:23.1813234Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.1813686Z               "line": 153
2026-06-05T00:45:23.1814103Z             },
2026-06-05T00:45:23.1814515Z             {
2026-06-05T00:45:23.1815235Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.1815687Z               "line": 182
2026-06-05T00:45:23.1816112Z             },
2026-06-05T00:45:23.1816770Z             {
2026-06-05T00:45:23.1817576Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-05T00:45:23.1818163Z               "line": 31
2026-06-05T00:45:23.1818587Z             },
2026-06-05T00:45:23.1819012Z             {
2026-06-05T00:45:23.1819849Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-05T00:45:23.1820309Z               "line": 113
2026-06-05T00:45:23.1820726Z             },
2026-06-05T00:45:23.1821152Z             {
2026-06-05T00:45:23.1821942Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-05T00:45:23.1822402Z               "line": 138
2026-06-05T00:45:23.1822823Z             }
2026-06-05T00:45:23.1823233Z           ]
2026-06-05T00:45:23.1823647Z         },
2026-06-05T00:45:23.1824065Z         "int": {
2026-06-05T00:45:23.1824553Z           "complete": false,
2026-06-05T00:45:23.1825036Z           "evidence": []
2026-06-05T00:45:23.1825461Z         },
2026-06-05T00:45:23.1825907Z         "unit": {
2026-06-05T00:45:23.1826366Z           "complete": true,
2026-06-05T00:45:23.1826814Z           "evidence": [
2026-06-05T00:45:23.1827238Z             {
2026-06-05T00:45:23.1827968Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.1828419Z               "line": 261
2026-06-05T00:45:23.1828840Z             },
2026-06-05T00:45:23.1829304Z             {
2026-06-05T00:45:23.1830019Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.1830479Z               "line": 276
2026-06-05T00:45:23.1830894Z             },
2026-06-05T00:45:23.1831312Z             {
2026-06-05T00:45:23.1832023Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.1832480Z               "line": 293
2026-06-05T00:45:23.1832899Z             },
2026-06-05T00:45:23.1833308Z             {
2026-06-05T00:45:23.1834032Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.1834481Z               "line": 310
2026-06-05T00:45:23.1834923Z             },
2026-06-05T00:45:23.1835339Z             {
2026-06-05T00:45:23.1836061Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.1836522Z               "line": 327
2026-06-05T00:45:23.1836932Z             },
2026-06-05T00:45:23.1837350Z             {
2026-06-05T00:45:23.1838063Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.1838517Z               "line": 366
2026-06-05T00:45:23.1838944Z             },
2026-06-05T00:45:23.1839383Z             {
2026-06-05T00:45:23.1840193Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-05T00:45:23.1840638Z               "line": 179
2026-06-05T00:45:23.1841056Z             },
2026-06-05T00:45:23.1841468Z             {
2026-06-05T00:45:23.1842274Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-05T00:45:23.1842726Z               "line": 194
2026-06-05T00:45:23.1843137Z             },
2026-06-05T00:45:23.1849145Z             {
2026-06-05T00:45:23.1850250Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-05T00:45:23.1850761Z               "line": 204
2026-06-05T00:45:23.1851188Z             },
2026-06-05T00:45:23.1851609Z             {
2026-06-05T00:45:23.1852436Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-05T00:45:23.1852886Z               "line": 259
2026-06-05T00:45:23.1853308Z             },
2026-06-05T00:45:23.1853717Z             {
2026-06-05T00:45:23.1854529Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-05T00:45:23.1854985Z               "line": 269
2026-06-05T00:45:23.1855412Z             },
2026-06-05T00:45:23.1855829Z             {
2026-06-05T00:45:23.1856622Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-05T00:45:23.1857073Z               "line": 283
2026-06-05T00:45:23.1857490Z             }
2026-06-05T00:45:23.1857902Z           ]
2026-06-05T00:45:23.1858310Z         }
2026-06-05T00:45:23.1859000Z       }
2026-06-05T00:45:23.1859456Z     },
2026-06-05T00:45:23.1859859Z     {
2026-06-05T00:45:23.1860440Z       "id": "REQ-HAZARD-PARENT-PID-PREFER",
2026-06-05T00:45:23.1861691Z       "title": "Prefer stable parent PID / broker handle over ephemeral PID (2.1)",
2026-06-05T00:45:23.1862187Z       "requiredStages": [],
2026-06-05T00:45:23.1862612Z       "stages": {
2026-06-05T00:45:23.1863037Z         "doc": {
2026-06-05T00:45:23.1863507Z           "complete": false,
2026-06-05T00:45:23.1863954Z           "evidence": []
2026-06-05T00:45:23.1864370Z         },
2026-06-05T00:45:23.1864788Z         "impl": {
2026-06-05T00:45:23.1865255Z           "complete": false,
2026-06-05T00:45:23.1865698Z           "evidence": []
2026-06-05T00:45:23.1866112Z         },
2026-06-05T00:45:23.1866538Z         "int": {
2026-06-05T00:45:23.1866998Z           "complete": false,
2026-06-05T00:45:23.1867450Z           "evidence": []
2026-06-05T00:45:23.1867856Z         },
2026-06-05T00:45:23.1868274Z         "unit": {
2026-06-05T00:45:23.1868749Z           "complete": false,
2026-06-05T00:45:23.1869249Z           "evidence": []
2026-06-05T00:45:23.1869681Z         }
2026-06-05T00:45:23.1870080Z       }
2026-06-05T00:45:23.1870495Z     },
2026-06-05T00:45:23.1870894Z     {
2026-06-05T00:45:23.1871547Z       "id": "REQ-HAZARD-PSYCHE-OUTBOUND-PROXY",
2026-06-05T00:45:23.1882882Z       "title": "Psyche outbound captured + sanitized: the live-Psyche turn driver captures stdout (never Stdio::null), and the daemon strips/re-stamps Psyche-supplied from=/target and constrains routing (reply→__REPLY_TO__ sender, notify→own user/subnet) (7.3)",
2026-06-05T00:45:23.1883477Z       "requiredStages": [
2026-06-05T00:45:23.1883912Z         "impl",
2026-06-05T00:45:23.1884328Z         "unit"
2026-06-05T00:45:23.1884750Z       ],
2026-06-05T00:45:23.1885181Z       "stages": {
2026-06-05T00:45:23.1885614Z         "doc": {
2026-06-05T00:45:23.1886090Z           "complete": false,
2026-06-05T00:45:23.1886535Z           "evidence": []
2026-06-05T00:45:23.1887026Z         },
2026-06-05T00:45:23.1887445Z         "impl": {
2026-06-05T00:45:23.1887913Z           "complete": true,
2026-06-05T00:45:23.1888383Z           "evidence": [
2026-06-05T00:45:23.1888807Z             {
2026-06-05T00:45:23.1889515Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.1889958Z               "line": 26
2026-06-05T00:45:23.1890377Z             },
2026-06-05T00:45:23.1890783Z             {
2026-06-05T00:45:23.1891443Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.1891878Z               "line": 93
2026-06-05T00:45:23.1892296Z             },
2026-06-05T00:45:23.1892709Z             {
2026-06-05T00:45:23.1893358Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.1893804Z               "line": 158
2026-06-05T00:45:23.1894208Z             },
2026-06-05T00:45:23.1894617Z             {
2026-06-05T00:45:23.1895243Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-05T00:45:23.1895700Z               "line": 19
2026-06-05T00:45:23.1896114Z             },
2026-06-05T00:45:23.1896514Z             {
2026-06-05T00:45:23.1897164Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-05T00:45:23.1897597Z               "line": 50
2026-06-05T00:45:23.1898017Z             },
2026-06-05T00:45:23.1898427Z             {
2026-06-05T00:45:23.1899004Z               "path": "crates/spt-live/src/turn.rs",
2026-06-05T00:45:23.1899475Z               "line": 18
2026-06-05T00:45:23.1899888Z             },
2026-06-05T00:45:23.1900299Z             {
2026-06-05T00:45:23.1900884Z               "path": "crates/spt-live/src/turn.rs",
2026-06-05T00:45:23.1901323Z               "line": 65
2026-06-05T00:45:23.1901745Z             },
2026-06-05T00:45:23.1902148Z             {
2026-06-05T00:45:23.1902763Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:23.1903196Z               "line": 70
2026-06-05T00:45:23.1903614Z             }
2026-06-05T00:45:23.1904017Z           ]
2026-06-05T00:45:23.1904782Z         },
2026-06-05T00:45:23.1905207Z         "int": {
2026-06-05T00:45:23.1905671Z           "complete": false,
2026-06-05T00:45:23.1906268Z           "evidence": []
2026-06-05T00:45:23.1906673Z         },
2026-06-05T00:45:23.1907092Z         "unit": {
2026-06-05T00:45:23.1907551Z           "complete": true,
2026-06-05T00:45:23.1907995Z           "evidence": [
2026-06-05T00:45:23.1908404Z             {
2026-06-05T00:45:23.1909054Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.1909547Z               "line": 276
2026-06-05T00:45:23.1909955Z             },
2026-06-05T00:45:23.1910369Z             {
2026-06-05T00:45:23.1911019Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.1911464Z               "line": 295
2026-06-05T00:45:23.1911881Z             },
2026-06-05T00:45:23.1912290Z             {
2026-06-05T00:45:23.1912951Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.1913389Z               "line": 323
2026-06-05T00:45:23.1913818Z             },
2026-06-05T00:45:23.1914223Z             {
2026-06-05T00:45:23.1914903Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.1915543Z               "line": 372
2026-06-05T00:45:23.1916311Z             },
2026-06-05T00:45:23.1917598Z             {
2026-06-05T00:45:23.1918870Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.1920879Z               "line": 383
2026-06-05T00:45:23.1922026Z             },
2026-06-05T00:45:23.1923061Z             {
2026-06-05T00:45:23.1924572Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.1926370Z               "line": 414
2026-06-05T00:45:23.1927737Z             },
2026-06-05T00:45:23.1929016Z             {
2026-06-05T00:45:23.1930584Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.1932367Z               "line": 425
2026-06-05T00:45:23.1933644Z             },
2026-06-05T00:45:23.1934930Z             {
2026-06-05T00:45:23.1936370Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-05T00:45:23.1938130Z               "line": 77
2026-06-05T00:45:23.1939477Z             },
2026-06-05T00:45:23.1940638Z             {
2026-06-05T00:45:23.1953603Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-05T00:45:23.1955286Z               "line": 95
2026-06-05T00:45:23.1956537Z             },
2026-06-05T00:45:23.1957553Z             {
2026-06-05T00:45:23.1958753Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-05T00:45:23.1960366Z               "line": 106
2026-06-05T00:45:23.1961485Z             },
2026-06-05T00:45:23.1962459Z             {
2026-06-05T00:45:23.1963640Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-05T00:45:23.1965180Z               "line": 117
2026-06-05T00:45:23.1966303Z             },
2026-06-05T00:45:23.1967276Z             {
2026-06-05T00:45:23.1968460Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-05T00:45:23.1970067Z               "line": 124
2026-06-05T00:45:23.1971188Z             },
2026-06-05T00:45:23.1972161Z             {
2026-06-05T00:45:23.1973377Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-05T00:45:23.1974933Z               "line": 137
2026-06-05T00:45:23.1976055Z             },
2026-06-05T00:45:23.1977042Z             {
2026-06-05T00:45:23.1978170Z               "path": "crates/spt-live/src/turn.rs",
2026-06-05T00:45:23.1979694Z               "line": 106
2026-06-05T00:45:23.1980817Z             },
2026-06-05T00:45:23.1981790Z             {
2026-06-05T00:45:23.1982921Z               "path": "crates/spt-live/src/turn.rs",
2026-06-05T00:45:23.1984409Z               "line": 118
2026-06-05T00:45:23.1985530Z             },
2026-06-05T00:45:23.1986504Z             {
2026-06-05T00:45:23.1987678Z               "path": "crates/spt-proto/src/event.rs",
2026-06-05T00:45:23.1989231Z               "line": 336
2026-06-05T00:45:23.1990355Z             }
2026-06-05T00:45:23.1991315Z           ]
2026-06-05T00:45:23.1992607Z         }
2026-06-05T00:45:23.1993525Z       }
2026-06-05T00:45:23.1994425Z     },
2026-06-05T00:45:23.1995558Z     {
2026-06-05T00:45:23.1996650Z       "id": "REQ-HAZARD-REGISTRY-CONCURRENT",
2026-06-05T00:45:23.1999273Z       "title": "Concurrent SQLite openers (registry/spool) must not fail with 'database is locked' (4.7)",
2026-06-05T00:45:23.2001816Z       "requiredStages": [
2026-06-05T00:45:23.2002962Z         "impl",
2026-06-05T00:45:23.2004036Z         "unit"
2026-06-05T00:45:23.2005011Z       ],
2026-06-05T00:45:23.2005945Z       "stages": {
2026-06-05T00:45:23.2006959Z         "doc": {
2026-06-05T00:45:23.2008004Z           "complete": true,
2026-06-05T00:45:23.2009233Z           "evidence": [
2026-06-05T00:45:23.2010321Z             {
2026-06-05T00:45:23.2011425Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-05T00:45:23.2012881Z               "line": 137
2026-06-05T00:45:23.2013994Z             }
2026-06-05T00:45:23.2014946Z           ]
2026-06-05T00:45:23.2015901Z         },
2026-06-05T00:45:23.2016845Z         "impl": {
2026-06-05T00:45:23.2017916Z           "complete": true,
2026-06-05T00:45:23.2019112Z           "evidence": [
2026-06-05T00:45:23.2020235Z             {
2026-06-05T00:45:23.2021357Z               "path": "crates/spt-store/src/db.rs",
2026-06-05T00:45:23.2022853Z               "line": 29
2026-06-05T00:45:23.2023962Z             },
2026-06-05T00:45:23.2024940Z             {
2026-06-05T00:45:23.2026104Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.2027632Z               "line": 101
2026-06-05T00:45:23.2028753Z             },
2026-06-05T00:45:23.2029776Z             {
2026-06-05T00:45:23.2030962Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2032537Z               "line": 30
2026-06-05T00:45:23.2033656Z             },
2026-06-05T00:45:23.2034635Z             {
2026-06-05T00:45:23.2035798Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.2037343Z               "line": 48
2026-06-05T00:45:23.2038492Z             }
2026-06-05T00:45:23.2039482Z           ]
2026-06-05T00:45:23.2040421Z         },
2026-06-05T00:45:23.2041369Z         "int": {
2026-06-05T00:45:23.2042427Z           "complete": false,
2026-06-05T00:45:23.2043653Z           "evidence": []
2026-06-05T00:45:23.2044770Z         },
2026-06-05T00:45:23.2045711Z         "unit": {
2026-06-05T00:45:23.2046766Z           "complete": true,
2026-06-05T00:45:23.2047990Z           "evidence": [
2026-06-05T00:45:23.2056159Z             {
2026-06-05T00:45:23.2057594Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2059258Z               "line": 152
2026-06-05T00:45:23.2060392Z             }
2026-06-05T00:45:23.2061383Z           ]
2026-06-05T00:45:23.2062852Z         }
2026-06-05T00:45:23.2063913Z       }
2026-06-05T00:45:23.2065179Z     },
2026-06-05T00:45:23.2066165Z     {
2026-06-05T00:45:23.2067420Z       "id": "REQ-HAZARD-REGISTRY-DIR-CREATE",
2026-06-05T00:45:23.2070882Z       "title": "SQLite store opens create their parent dir themselves — a fresh-home registry op must not SQLITE_CANTOPEN (4.9)",
2026-06-05T00:45:23.2073971Z       "requiredStages": [
2026-06-05T00:45:23.2075139Z         "doc",
2026-06-05T00:45:23.2076130Z         "impl",
2026-06-05T00:45:23.2077133Z         "unit"
2026-06-05T00:45:23.2078110Z       ],
2026-06-05T00:45:23.2079060Z       "stages": {
2026-06-05T00:45:23.2080134Z         "doc": {
2026-06-05T00:45:23.2081188Z           "complete": true,
2026-06-05T00:45:23.2082376Z           "evidence": [
2026-06-05T00:45:23.2083464Z             {
2026-06-05T00:45:23.2084570Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-05T00:45:23.2086041Z               "line": 149
2026-06-05T00:45:23.2087168Z             }
2026-06-05T00:45:23.2088142Z           ]
2026-06-05T00:45:23.2089074Z         },
2026-06-05T00:45:23.2090056Z         "impl": {
2026-06-05T00:45:23.2091112Z           "complete": true,
2026-06-05T00:45:23.2092305Z           "evidence": [
2026-06-05T00:45:23.2093386Z             {
2026-06-05T00:45:23.2095036Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2096617Z               "line": 22
2026-06-05T00:45:23.2097912Z             }
2026-06-05T00:45:23.2098903Z           ]
2026-06-05T00:45:23.2099897Z         },
2026-06-05T00:45:23.2100838Z         "int": {
2026-06-05T00:45:23.2101905Z           "complete": false,
2026-06-05T00:45:23.2103140Z           "evidence": []
2026-06-05T00:45:23.2104275Z         },
2026-06-05T00:45:23.2105221Z         "unit": {
2026-06-05T00:45:23.2106279Z           "complete": true,
2026-06-05T00:45:23.2107468Z           "evidence": [
2026-06-05T00:45:23.2108567Z             {
2026-06-05T00:45:23.2109806Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2111388Z               "line": 257
2026-06-05T00:45:23.2112507Z             }
2026-06-05T00:45:23.2113471Z           ]
2026-06-05T00:45:23.2114409Z         }
2026-06-05T00:45:23.2115324Z       }
2026-06-05T00:45:23.2116253Z     },
2026-06-05T00:45:23.2117196Z     {
2026-06-05T00:45:23.2118302Z       "id": "REQ-HAZARD-REGISTRY-EPOCH-LEASE",
2026-06-05T00:45:23.2121994Z       "title": "Registry merge ordered by per-node monotonic epoch, never wall-clock — a stale Active can't clobber a newer Offline (4.8, red-team #8)",
2026-06-05T00:45:23.2126063Z       "requiredStages": [
2026-06-05T00:45:23.2127519Z         "impl",
2026-06-05T00:45:23.2128597Z         "unit"
2026-06-05T00:45:23.2130139Z       ],
2026-06-05T00:45:23.2131169Z       "stages": {
2026-06-05T00:45:23.2132288Z         "doc": {
2026-06-05T00:45:23.2133422Z           "complete": true,
2026-06-05T00:45:23.2134707Z           "evidence": [
2026-06-05T00:45:23.2135842Z             {
2026-06-05T00:45:23.2137006Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-05T00:45:23.2138546Z               "line": 143
2026-06-05T00:45:23.2139985Z             }
2026-06-05T00:45:23.2141057Z           ]
2026-06-05T00:45:23.2142091Z         },
2026-06-05T00:45:23.2143143Z         "impl": {
2026-06-05T00:45:23.2144465Z           "complete": true,
2026-06-05T00:45:23.2145727Z           "evidence": [
2026-06-05T00:45:23.2146908Z             {
2026-06-05T00:45:23.2148428Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.2150387Z               "line": 134
2026-06-05T00:45:23.2151733Z             },
2026-06-05T00:45:23.2152698Z             {
2026-06-05T00:45:23.2154012Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-05T00:45:23.2155730Z               "line": 15
2026-06-05T00:45:23.2156836Z             }
2026-06-05T00:45:23.2157803Z           ]
2026-06-05T00:45:23.2158746Z         },
2026-06-05T00:45:23.2160089Z         "int": {
2026-06-05T00:45:23.2168931Z           "complete": false,
2026-06-05T00:45:23.2170259Z           "evidence": []
2026-06-05T00:45:23.2171370Z         },
2026-06-05T00:45:23.2172307Z         "unit": {
2026-06-05T00:45:23.2173346Z           "complete": true,
2026-06-05T00:45:23.2174526Z           "evidence": [
2026-06-05T00:45:23.2175599Z             {
2026-06-05T00:45:23.2176895Z               "path": "crates/spt-daemon/tests/replicate.rs",
2026-06-05T00:45:23.2178502Z               "line": 87
2026-06-05T00:45:23.2179658Z             },
2026-06-05T00:45:23.2180631Z             {
2026-06-05T00:45:23.2181836Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.2183399Z               "line": 570
2026-06-05T00:45:23.2184512Z             },
2026-06-05T00:45:23.2185477Z             {
2026-06-05T00:45:23.2186686Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.2188278Z               "line": 589
2026-06-05T00:45:23.2189446Z             },
2026-06-05T00:45:23.2190425Z             {
2026-06-05T00:45:23.2191652Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-05T00:45:23.2193243Z               "line": 148
2026-06-05T00:45:23.2194364Z             },
2026-06-05T00:45:23.2195333Z             {
2026-06-05T00:45:23.2196484Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-05T00:45:23.2198488Z               "line": 74
2026-06-05T00:45:23.2199637Z             },
2026-06-05T00:45:23.2200606Z             {
2026-06-05T00:45:23.2201926Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-05T00:45:23.2203441Z               "line": 88
2026-06-05T00:45:23.2204544Z             },
2026-06-05T00:45:23.2205519Z             {
2026-06-05T00:45:23.2206668Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-05T00:45:23.2208180Z               "line": 104
2026-06-05T00:45:23.2209352Z             }
2026-06-05T00:45:23.2210314Z           ]
2026-06-05T00:45:23.2211250Z         }
2026-06-05T00:45:23.2212166Z       }
2026-06-05T00:45:23.2213061Z     },
2026-06-05T00:45:23.2213966Z     {
2026-06-05T00:45:23.2215063Z       "id": "REQ-HAZARD-REGISTRY-STALE-CLEAN",
2026-06-05T00:45:23.2217206Z       "title": "Stale registry entries degrade to fallback, never hard-fail (4.3)",
2026-06-05T00:45:23.2219338Z       "requiredStages": [
2026-06-05T00:45:23.2220514Z         "impl",
2026-06-05T00:45:23.2221529Z         "unit"
2026-06-05T00:45:23.2222505Z       ],
2026-06-05T00:45:23.2223439Z       "stages": {
2026-06-05T00:45:23.2224468Z         "doc": {
2026-06-05T00:45:23.2225511Z           "complete": false,
2026-06-05T00:45:23.2226725Z           "evidence": []
2026-06-05T00:45:23.2227828Z         },
2026-06-05T00:45:23.2228764Z         "impl": {
2026-06-05T00:45:23.2229856Z           "complete": true,
2026-06-05T00:45:23.2231034Z           "evidence": [
2026-06-05T00:45:23.2232108Z             {
2026-06-05T00:45:23.2233255Z               "path": "crates/spt-store/src/proc.rs",
2026-06-05T00:45:23.2234768Z               "line": 15
2026-06-05T00:45:23.2235862Z             },
2026-06-05T00:45:23.2236832Z             {
2026-06-05T00:45:23.2238016Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2239618Z               "line": 55
2026-06-05T00:45:23.2240724Z             },
2026-06-05T00:45:23.2241693Z             {
2026-06-05T00:45:23.2242879Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2244446Z               "line": 62
2026-06-05T00:45:23.2245542Z             },
2026-06-05T00:45:23.2246528Z             {
2026-06-05T00:45:23.2247725Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2249328Z               "line": 107
2026-06-05T00:45:23.2250446Z             },
2026-06-05T00:45:23.2251411Z             {
2026-06-05T00:45:23.2252599Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2254145Z               "line": 128
2026-06-05T00:45:23.2255256Z             }
2026-06-05T00:45:23.2256215Z           ]
2026-06-05T00:45:23.2257161Z         },
2026-06-05T00:45:23.2258122Z         "int": {
2026-06-05T00:45:23.2259217Z           "complete": false,
2026-06-05T00:45:23.2260436Z           "evidence": []
2026-06-05T00:45:23.2261533Z         },
2026-06-05T00:45:23.2262461Z         "unit": {
2026-06-05T00:45:23.2263504Z           "complete": true,
2026-06-05T00:45:23.2271001Z           "evidence": [
2026-06-05T00:45:23.2272320Z             {
2026-06-05T00:45:23.2273485Z               "path": "crates/spt-store/src/proc.rs",
2026-06-05T00:45:23.2275019Z               "line": 113
2026-06-05T00:45:23.2276140Z             },
2026-06-05T00:45:23.2277109Z             {
2026-06-05T00:45:23.2278246Z               "path": "crates/spt-store/src/proc.rs",
2026-06-05T00:45:23.2279827Z               "line": 119
2026-06-05T00:45:23.2280938Z             },
2026-06-05T00:45:23.2281910Z             {
2026-06-05T00:45:23.2283048Z               "path": "crates/spt-store/src/proc.rs",
2026-06-05T00:45:23.2284557Z               "line": 130
2026-06-05T00:45:23.2285678Z             },
2026-06-05T00:45:23.2286681Z             {
2026-06-05T00:45:23.2287861Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2289457Z               "line": 183
2026-06-05T00:45:23.2290567Z             },
2026-06-05T00:45:23.2291525Z             {
2026-06-05T00:45:23.2292699Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2294582Z               "line": 193
2026-06-05T00:45:23.2295701Z             },
2026-06-05T00:45:23.2296819Z             {
2026-06-05T00:45:23.2297995Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2299593Z               "line": 237
2026-06-05T00:45:23.2300706Z             },
2026-06-05T00:45:23.2301666Z             {
2026-06-05T00:45:23.2302840Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2304385Z               "line": 249
2026-06-05T00:45:23.2305506Z             },
2026-06-05T00:45:23.2306464Z             {
2026-06-05T00:45:23.2307646Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.2309240Z               "line": 275
2026-06-05T00:45:23.2310354Z             }
2026-06-05T00:45:23.2311313Z           ]
2026-06-05T00:45:23.2312239Z         }
2026-06-05T00:45:23.2313139Z       }
2026-06-05T00:45:23.2314037Z     },
2026-06-05T00:45:23.2314955Z     {
2026-06-05T00:45:23.2316013Z       "id": "REQ-HAZARD-RESTART-IDEMPOTENT",
2026-06-05T00:45:23.2318701Z       "title": "Idempotent/exactly-once delivery across brain restart at every broker boundary (codex #14)",
2026-06-05T00:45:23.2321412Z       "requiredStages": [
2026-06-05T00:45:23.2322563Z         "impl",
2026-06-05T00:45:23.2323548Z         "unit",
2026-06-05T00:45:23.2324522Z         "int"
2026-06-05T00:45:23.2325472Z       ],
2026-06-05T00:45:23.2326415Z       "stages": {
2026-06-05T00:45:23.2327415Z         "doc": {
2026-06-05T00:45:23.2328451Z           "complete": false,
2026-06-05T00:45:23.2329705Z           "evidence": []
2026-06-05T00:45:23.2330809Z         },
2026-06-05T00:45:23.2331738Z         "impl": {
2026-06-05T00:45:23.2332774Z           "complete": true,
2026-06-05T00:45:23.2333954Z           "evidence": [
2026-06-05T00:45:23.2335028Z             {
2026-06-05T00:45:23.2336182Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-05T00:45:23.2337706Z               "line": 246
2026-06-05T00:45:23.2338809Z             },
2026-06-05T00:45:23.2339834Z             {
2026-06-05T00:45:23.2340984Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-05T00:45:23.2342518Z               "line": 506
2026-06-05T00:45:23.2343636Z             },
2026-06-05T00:45:23.2344596Z             {
2026-06-05T00:45:23.2345744Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-05T00:45:23.2347278Z               "line": 529
2026-06-05T00:45:23.2348388Z             },
2026-06-05T00:45:23.2349396Z             {
2026-06-05T00:45:23.2350558Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-05T00:45:23.2352088Z               "line": 553
2026-06-05T00:45:23.2353198Z             },
2026-06-05T00:45:23.2354162Z             {
2026-06-05T00:45:23.2355325Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-05T00:45:23.2356880Z               "line": 472
2026-06-05T00:45:23.2357990Z             },
2026-06-05T00:45:23.2358959Z             {
2026-06-05T00:45:23.2360158Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-05T00:45:23.2361717Z               "line": 553
2026-06-05T00:45:23.2362831Z             },
2026-06-05T00:45:23.2363812Z             {
2026-06-05T00:45:23.2364984Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-05T00:45:23.2366538Z               "line": 597
2026-06-05T00:45:23.2367639Z             },
2026-06-05T00:45:23.2368594Z             {
2026-06-05T00:45:23.2375438Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-05T00:45:23.2377097Z               "line": 640
2026-06-05T00:45:23.2378214Z             },
2026-06-05T00:45:23.2379270Z             {
2026-06-05T00:45:23.2380478Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-05T00:45:23.2382031Z               "line": 46
2026-06-05T00:45:23.2383134Z             },
2026-06-05T00:45:23.2384101Z             {
2026-06-05T00:45:23.2385270Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-05T00:45:23.2386824Z               "line": 160
2026-06-05T00:45:23.2387941Z             },
2026-06-05T00:45:23.2389282Z             {
2026-06-05T00:45:23.2390424Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-05T00:45:23.2392161Z               "line": 71
2026-06-05T00:45:23.2393276Z             },
2026-06-05T00:45:23.2394246Z             {
2026-06-05T00:45:23.2395406Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.2396923Z               "line": 128
2026-06-05T00:45:23.2398036Z             },
2026-06-05T00:45:23.2399002Z             {
2026-06-05T00:45:23.2400447Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.2401989Z               "line": 174
2026-06-05T00:45:23.2403118Z             }
2026-06-05T00:45:23.2404074Z           ]
2026-06-05T00:45:23.2404999Z         },
2026-06-05T00:45:23.2405926Z         "int": {
2026-06-05T00:45:23.2406957Z           "complete": true,
2026-06-05T00:45:23.2408134Z           "evidence": [
2026-06-05T00:45:23.2409245Z             {
2026-06-05T00:45:23.2410498Z               "path": "crates/spt-daemon/tests/idempotent.rs",
2026-06-05T00:45:23.2412153Z               "line": 27
2026-06-05T00:45:23.2413264Z             },
2026-06-05T00:45:23.2414245Z             {
2026-06-05T00:45:23.2415506Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-05T00:45:23.2417124Z               "line": 125
2026-06-05T00:45:23.2418238Z             },
2026-06-05T00:45:23.2419239Z             {
2026-06-05T00:45:23.2420480Z               "path": "crates/spt-daemon/tests/netstream.rs",
2026-06-05T00:45:23.2422099Z               "line": 189
2026-06-05T00:45:23.2423223Z             }
2026-06-05T00:45:23.2424175Z           ]
2026-06-05T00:45:23.2425102Z         },
2026-06-05T00:45:23.2426035Z         "unit": {
2026-06-05T00:45:23.2427074Z           "complete": true,
2026-06-05T00:45:23.2428261Z           "evidence": [
2026-06-05T00:45:23.2429376Z             {
2026-06-05T00:45:23.2430565Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-05T00:45:23.2432139Z               "line": 282
2026-06-05T00:45:23.2433261Z             },
2026-06-05T00:45:23.2434224Z             {
2026-06-05T00:45:23.2435396Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-05T00:45:23.2436981Z               "line": 300
2026-06-05T00:45:23.2438083Z             },
2026-06-05T00:45:23.2439048Z             {
2026-06-05T00:45:23.2440270Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-05T00:45:23.2441838Z               "line": 318
2026-06-05T00:45:23.2442959Z             },
2026-06-05T00:45:23.2443915Z             {
2026-06-05T00:45:23.2445098Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-05T00:45:23.2446677Z               "line": 221
2026-06-05T00:45:23.2447798Z             },
2026-06-05T00:45:23.2448765Z             {
2026-06-05T00:45:23.2449998Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-05T00:45:23.2451569Z               "line": 204
2026-06-05T00:45:23.2452683Z             },
2026-06-05T00:45:23.2453655Z             {
2026-06-05T00:45:23.2454832Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-05T00:45:23.2456400Z               "line": 182
2026-06-05T00:45:23.2457527Z             },
2026-06-05T00:45:23.2458495Z             {
2026-06-05T00:45:23.2459687Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.2461217Z               "line": 441
2026-06-05T00:45:23.2462353Z             },
2026-06-05T00:45:23.2463322Z             {
2026-06-05T00:45:23.2464465Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.2465996Z               "line": 465
2026-06-05T00:45:23.2467108Z             }
2026-06-05T00:45:23.2468064Z           ]
2026-06-05T00:45:23.2468985Z         }
2026-06-05T00:45:23.2469931Z       }
2026-06-05T00:45:23.2470832Z     },
2026-06-05T00:45:23.2471741Z     {
2026-06-05T00:45:23.2478790Z       "id": "REQ-HAZARD-SINGLE-PATH-SOURCE",
2026-06-05T00:45:23.2481032Z       "title": "Single path/registry source of truth; no layout ambiguity (6.1)",
2026-06-05T00:45:23.2483069Z       "requiredStages": [
2026-06-05T00:45:23.2484567Z         "impl",
2026-06-05T00:45:23.2485555Z         "unit"
2026-06-05T00:45:23.2486523Z       ],
2026-06-05T00:45:23.2487624Z       "stages": {
2026-06-05T00:45:23.2488642Z         "doc": {
2026-06-05T00:45:23.2489774Z           "complete": false,
2026-06-05T00:45:23.2491023Z           "evidence": []
2026-06-05T00:45:23.2492133Z         },
2026-06-05T00:45:23.2493069Z         "impl": {
2026-06-05T00:45:23.2494106Z           "complete": true,
2026-06-05T00:45:23.2495290Z           "evidence": [
2026-06-05T00:45:23.2496363Z             {
2026-06-05T00:45:23.2497600Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.2499259Z               "line": 56
2026-06-05T00:45:23.2500357Z             },
2026-06-05T00:45:23.2501330Z             {
2026-06-05T00:45:23.2502566Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.2504161Z               "line": 65
2026-06-05T00:45:23.2505259Z             },
2026-06-05T00:45:23.2506243Z             {
2026-06-05T00:45:23.2507479Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.2509096Z               "line": 72
2026-06-05T00:45:23.2510235Z             },
2026-06-05T00:45:23.2511202Z             {
2026-06-05T00:45:23.2512354Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2513863Z               "line": 33
2026-06-05T00:45:23.2514967Z             },
2026-06-05T00:45:23.2515925Z             {
2026-06-05T00:45:23.2517073Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2518589Z               "line": 61
2026-06-05T00:45:23.2519735Z             },
2026-06-05T00:45:23.2520705Z             {
2026-06-05T00:45:23.2521854Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2523360Z               "line": 70
2026-06-05T00:45:23.2524456Z             },
2026-06-05T00:45:23.2525422Z             {
2026-06-05T00:45:23.2526571Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2528091Z               "line": 79
2026-06-05T00:45:23.2529218Z             },
2026-06-05T00:45:23.2530381Z             {
2026-06-05T00:45:23.2532034Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2533836Z               "line": 88
2026-06-05T00:45:23.2535025Z             },
2026-06-05T00:45:23.2536348Z             {
2026-06-05T00:45:23.2537521Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2539026Z               "line": 97
2026-06-05T00:45:23.2540198Z             },
2026-06-05T00:45:23.2541176Z             {
2026-06-05T00:45:23.2542333Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2543857Z               "line": 105
2026-06-05T00:45:23.2544971Z             },
2026-06-05T00:45:23.2545943Z             {
2026-06-05T00:45:23.2547093Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2548606Z               "line": 114
2026-06-05T00:45:23.2549754Z             },
2026-06-05T00:45:23.2550742Z             {
2026-06-05T00:45:23.2551929Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2553443Z               "line": 123
2026-06-05T00:45:23.2554588Z             },
2026-06-05T00:45:23.2555568Z             {
2026-06-05T00:45:23.2556739Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2558258Z               "line": 130
2026-06-05T00:45:23.2559404Z             },
2026-06-05T00:45:23.2560387Z             {
2026-06-05T00:45:23.2561536Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2563045Z               "line": 137
2026-06-05T00:45:23.2564141Z             },
2026-06-05T00:45:23.2565115Z             {
2026-06-05T00:45:23.2566267Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2567790Z               "line": 145
2026-06-05T00:45:23.2568899Z             },
2026-06-05T00:45:23.2569918Z             {
2026-06-05T00:45:23.2571081Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2572882Z               "line": 154
2026-06-05T00:45:23.2574000Z             },
2026-06-05T00:45:23.2574409Z             {
2026-06-05T00:45:23.2575179Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2575627Z               "line": 163
2026-06-05T00:45:23.2576032Z             },
2026-06-05T00:45:23.2576448Z             {
2026-06-05T00:45:23.2577061Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2577511Z               "line": 172
2026-06-05T00:45:23.2577924Z             },
2026-06-05T00:45:23.2578350Z             {
2026-06-05T00:45:23.2578962Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2579446Z               "line": 184
2026-06-05T00:45:23.2579864Z             },
2026-06-05T00:45:23.2580268Z             {
2026-06-05T00:45:23.2580874Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2581313Z               "line": 191
2026-06-05T00:45:23.2581730Z             },
2026-06-05T00:45:23.2582142Z             {
2026-06-05T00:45:23.2582764Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2588891Z               "line": 200
2026-06-05T00:45:23.2589644Z             },
2026-06-05T00:45:23.2590076Z             {
2026-06-05T00:45:23.2590725Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2591183Z               "line": 207
2026-06-05T00:45:23.2591603Z             },
2026-06-05T00:45:23.2592010Z             {
2026-06-05T00:45:23.2592626Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2593063Z               "line": 274
2026-06-05T00:45:23.2593478Z             },
2026-06-05T00:45:23.2593878Z             {
2026-06-05T00:45:23.2594496Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2594943Z               "line": 286
2026-06-05T00:45:23.2595355Z             },
2026-06-05T00:45:23.2595771Z             {
2026-06-05T00:45:23.2596371Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2596823Z               "line": 373
2026-06-05T00:45:23.2597256Z             }
2026-06-05T00:45:23.2597677Z           ]
2026-06-05T00:45:23.2598084Z         },
2026-06-05T00:45:23.2598507Z         "int": {
2026-06-05T00:45:23.2598977Z           "complete": false,
2026-06-05T00:45:23.2599456Z           "evidence": []
2026-06-05T00:45:23.2599875Z         },
2026-06-05T00:45:23.2600294Z         "unit": {
2026-06-05T00:45:23.2600752Z           "complete": true,
2026-06-05T00:45:23.2601194Z           "evidence": [
2026-06-05T00:45:23.2601599Z             {
2026-06-05T00:45:23.2602213Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2602652Z               "line": 443
2026-06-05T00:45:23.2603068Z             },
2026-06-05T00:45:23.2603469Z             {
2026-06-05T00:45:23.2604085Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2604531Z               "line": 469
2026-06-05T00:45:23.2604942Z             },
2026-06-05T00:45:23.2605361Z             {
2026-06-05T00:45:23.2605958Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2606418Z               "line": 482
2026-06-05T00:45:23.2606824Z             },
2026-06-05T00:45:23.2607248Z             {
2026-06-05T00:45:23.2608029Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2608801Z               "line": 547
2026-06-05T00:45:23.2609346Z             }
2026-06-05T00:45:23.2609834Z           ]
2026-06-05T00:45:23.2610436Z         }
2026-06-05T00:45:23.2610874Z       }
2026-06-05T00:45:23.2611319Z     },
2026-06-05T00:45:23.2611761Z     {
2026-06-05T00:45:23.2612315Z       "id": "REQ-HAZARD-SOFT-CLEANUP",
2026-06-05T00:45:23.2613460Z       "title": "Soft-cleanup preserves state, removes only the ready marker (6.2)",
2026-06-05T00:45:23.2613974Z       "requiredStages": [
2026-06-05T00:45:23.2614421Z         "impl",
2026-06-05T00:45:23.2614877Z         "unit"
2026-06-05T00:45:23.2615305Z       ],
2026-06-05T00:45:23.2615753Z       "stages": {
2026-06-05T00:45:23.2616179Z         "doc": {
2026-06-05T00:45:23.2617001Z           "complete": false,
2026-06-05T00:45:23.2617478Z           "evidence": []
2026-06-05T00:45:23.2617933Z         },
2026-06-05T00:45:23.2618578Z         "impl": {
2026-06-05T00:45:23.2619111Z           "complete": true,
2026-06-05T00:45:23.2619944Z           "evidence": [
2026-06-05T00:45:23.2620362Z             {
2026-06-05T00:45:23.2620993Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-05T00:45:23.2621454Z               "line": 132
2026-06-05T00:45:23.2621892Z             },
2026-06-05T00:45:23.2622323Z             {
2026-06-05T00:45:23.2622994Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.2623492Z               "line": 130
2026-06-05T00:45:23.2623946Z             }
2026-06-05T00:45:23.2624371Z           ]
2026-06-05T00:45:23.2624820Z         },
2026-06-05T00:45:23.2625463Z         "int": {
2026-06-05T00:45:23.2626027Z           "complete": false,
2026-06-05T00:45:23.2626855Z           "evidence": []
2026-06-05T00:45:23.2627329Z         },
2026-06-05T00:45:23.2627846Z         "unit": {
2026-06-05T00:45:23.2628360Z           "complete": true,
2026-06-05T00:45:23.2628883Z           "evidence": [
2026-06-05T00:45:23.2629416Z             {
2026-06-05T00:45:23.2630212Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-05T00:45:23.2630704Z               "line": 250
2026-06-05T00:45:23.2631125Z             },
2026-06-05T00:45:23.2631550Z             {
2026-06-05T00:45:23.2632513Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.2632985Z               "line": 443
2026-06-05T00:45:23.2633412Z             },
2026-06-05T00:45:23.2633858Z             {
2026-06-05T00:45:23.2635016Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.2635533Z               "line": 453
2026-06-05T00:45:23.2636054Z             }
2026-06-05T00:45:23.2636541Z           ]
2026-06-05T00:45:23.2637001Z         }
2026-06-05T00:45:23.2637462Z       }
2026-06-05T00:45:23.2637948Z     },
2026-06-05T00:45:23.2638422Z     {
2026-06-05T00:45:23.2639092Z       "id": "REQ-HAZARD-STALE-INDEX-LOCK",
2026-06-05T00:45:23.2640076Z       "title": "Sweep stale lockfiles on daemon boot (1.3)",
2026-06-05T00:45:23.2640575Z       "requiredStages": [
2026-06-05T00:45:23.2641007Z         "impl",
2026-06-05T00:45:23.2641423Z         "unit"
2026-06-05T00:45:23.2642169Z       ],
2026-06-05T00:45:23.2642633Z       "stages": {
2026-06-05T00:45:23.2643053Z         "doc": {
2026-06-05T00:45:23.2643647Z           "complete": false,
2026-06-05T00:45:23.2644097Z           "evidence": []
2026-06-05T00:45:23.2644517Z         },
2026-06-05T00:45:23.2644937Z         "impl": {
2026-06-05T00:45:23.2645406Z           "complete": true,
2026-06-05T00:45:23.2645860Z           "evidence": [
2026-06-05T00:45:23.2646272Z             {
2026-06-05T00:45:23.2646914Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-05T00:45:23.2647354Z               "line": 54
2026-06-05T00:45:23.2647776Z             },
2026-06-05T00:45:23.2648178Z             {
2026-06-05T00:45:23.2648876Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.2649362Z               "line": 393
2026-06-05T00:45:23.2649805Z             }
2026-06-05T00:45:23.2650224Z           ]
2026-06-05T00:45:23.2650633Z         },
2026-06-05T00:45:23.2651061Z         "int": {
2026-06-05T00:45:23.2651519Z           "complete": false,
2026-06-05T00:45:23.2651974Z           "evidence": []
2026-06-05T00:45:23.2652383Z         },
2026-06-05T00:45:23.2652799Z         "unit": {
2026-06-05T00:45:23.2653272Z           "complete": true,
2026-06-05T00:45:23.2653710Z           "evidence": [
2026-06-05T00:45:23.2654128Z             {
2026-06-05T00:45:23.2654805Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.2655257Z               "line": 425
2026-06-05T00:45:23.2655675Z             }
2026-06-05T00:45:23.2656082Z           ]
2026-06-05T00:45:23.2656502Z         }
2026-06-05T00:45:23.2656915Z       }
2026-06-05T00:45:23.2657323Z     },
2026-06-05T00:45:23.2658132Z     {
2026-06-05T00:45:23.2658778Z       "id": "REQ-HAZARD-STALE-SIGNOFF-SENTINEL",
2026-06-05T00:45:23.2659762Z       "title": "Stale signoff sentinel does not kill a fresh start (3.2)",
2026-06-05T00:45:23.2660416Z       "requiredStages": [
2026-06-05T00:45:23.2660849Z         "impl",
2026-06-05T00:45:23.2661268Z         "unit"
2026-06-05T00:45:23.2661678Z       ],
2026-06-05T00:45:23.2662098Z       "stages": {
2026-06-05T00:45:23.2662522Z         "doc": {
2026-06-05T00:45:23.2662997Z           "complete": false,
2026-06-05T00:45:23.2663441Z           "evidence": []
2026-06-05T00:45:23.2663856Z         },
2026-06-05T00:45:23.2664278Z         "impl": {
2026-06-05T00:45:23.2664748Z           "complete": true,
2026-06-05T00:45:23.2665186Z           "evidence": [
2026-06-05T00:45:23.2665606Z             {
2026-06-05T00:45:23.2666272Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.2666726Z               "line": 432
2026-06-05T00:45:23.2667141Z             },
2026-06-05T00:45:23.2698608Z             {
2026-06-05T00:45:23.2700044Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-05T00:45:23.2700599Z               "line": 28
2026-06-05T00:45:23.2701044Z             }
2026-06-05T00:45:23.2701462Z           ]
2026-06-05T00:45:23.2701900Z         },
2026-06-05T00:45:23.2702338Z         "int": {
2026-06-05T00:45:23.2702817Z           "complete": false,
2026-06-05T00:45:23.2703296Z           "evidence": []
2026-06-05T00:45:23.2703708Z         },
2026-06-05T00:45:23.2704139Z         "unit": {
2026-06-05T00:45:23.2704608Z           "complete": true,
2026-06-05T00:45:23.2705062Z           "evidence": [
2026-06-05T00:45:23.2705485Z             {
2026-06-05T00:45:23.2706120Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-05T00:45:23.2706594Z               "line": 200
2026-06-05T00:45:23.2707038Z             }
2026-06-05T00:45:23.2707510Z           ]
2026-06-05T00:45:23.2707932Z         }
2026-06-05T00:45:23.2708343Z       }
2026-06-05T00:45:23.2708754Z     },
2026-06-05T00:45:23.2709252Z     {
2026-06-05T00:45:23.2710130Z       "id": "REQ-HAZARD-STDIN-SESSION-ID",
2026-06-05T00:45:23.2710881Z       "title": "Stdin session_id precedence over env (2.2)",
2026-06-05T00:45:23.2711370Z       "requiredStages": [],
2026-06-05T00:45:23.2711789Z       "stages": {
2026-06-05T00:45:23.2712219Z         "doc": {
2026-06-05T00:45:23.2712684Z           "complete": false,
2026-06-05T00:45:23.2713129Z           "evidence": []
2026-06-05T00:45:23.2713540Z         },
2026-06-05T00:45:23.2713952Z         "impl": {
2026-06-05T00:45:23.2714421Z           "complete": false,
2026-06-05T00:45:23.2714859Z           "evidence": []
2026-06-05T00:45:23.2715269Z         },
2026-06-05T00:45:23.2715687Z         "int": {
2026-06-05T00:45:23.2716142Z           "complete": false,
2026-06-05T00:45:23.2716588Z           "evidence": []
2026-06-05T00:45:23.2716988Z         },
2026-06-05T00:45:23.2717409Z         "unit": {
2026-06-05T00:45:23.2717864Z           "complete": false,
2026-06-05T00:45:23.2718327Z           "evidence": []
2026-06-05T00:45:23.2718733Z         }
2026-06-05T00:45:23.2719134Z       }
2026-06-05T00:45:23.2719597Z     },
2026-06-05T00:45:23.2720005Z     {
2026-06-05T00:45:23.2720583Z       "id": "REQ-HAZARD-SUBPROCESS-TIMEOUT",
2026-06-05T00:45:23.2721385Z       "title": "Every harness/git subprocess has a timeout (5.3)",
2026-06-05T00:45:23.2721857Z       "requiredStages": [
2026-06-05T00:45:23.2722280Z         "impl",
2026-06-05T00:45:23.2722685Z         "unit"
2026-06-05T00:45:23.2723102Z       ],
2026-06-05T00:45:23.2723521Z       "stages": {
2026-06-05T00:45:23.2723946Z         "doc": {
2026-06-05T00:45:23.2724403Z           "complete": false,
2026-06-05T00:45:23.2724853Z           "evidence": []
2026-06-05T00:45:23.2725266Z         },
2026-06-05T00:45:23.2725681Z         "impl": {
2026-06-05T00:45:23.2726150Z           "complete": true,
2026-06-05T00:45:23.2726584Z           "evidence": [
2026-06-05T00:45:23.2727001Z             {
2026-06-05T00:45:23.2727574Z               "path": "crates/spt-live/src/turn.rs",
2026-06-05T00:45:23.2728467Z               "line": 19
2026-06-05T00:45:23.2728884Z             },
2026-06-05T00:45:23.2729526Z             {
2026-06-05T00:45:23.2730191Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-05T00:45:23.2730632Z               "line": 325
2026-06-05T00:45:23.2731050Z             },
2026-06-05T00:45:23.2731456Z             {
2026-06-05T00:45:23.2732109Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-05T00:45:23.2732557Z               "line": 361
2026-06-05T00:45:23.2732960Z             },
2026-06-05T00:45:23.2733375Z             {
2026-06-05T00:45:23.2733983Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-05T00:45:23.2734421Z               "line": 15
2026-06-05T00:45:23.2734823Z             },
2026-06-05T00:45:23.2735241Z             {
2026-06-05T00:45:23.2735852Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-05T00:45:23.2736281Z               "line": 48
2026-06-05T00:45:23.2736709Z             },
2026-06-05T00:45:23.2737113Z             {
2026-06-05T00:45:23.2737727Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-05T00:45:23.2738179Z               "line": 106
2026-06-05T00:45:23.2738593Z             }
2026-06-05T00:45:23.2739000Z           ]
2026-06-05T00:45:23.2739439Z         },
2026-06-05T00:45:23.2739862Z         "int": {
2026-06-05T00:45:23.2740317Z           "complete": false,
2026-06-05T00:45:23.2740767Z           "evidence": []
2026-06-05T00:45:23.2741165Z         },
2026-06-05T00:45:23.2741590Z         "unit": {
2026-06-05T00:45:23.2742048Z           "complete": true,
2026-06-05T00:45:23.2742480Z           "evidence": [
2026-06-05T00:45:23.2742891Z             {
2026-06-05T00:45:23.2743531Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-05T00:45:23.2743982Z               "line": 453
2026-06-05T00:45:23.2744381Z             },
2026-06-05T00:45:23.2744795Z             {
2026-06-05T00:45:23.2745410Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-05T00:45:23.2745861Z               "line": 149
2026-06-05T00:45:23.2746276Z             },
2026-06-05T00:45:23.2746696Z             {
2026-06-05T00:45:23.2747308Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-05T00:45:23.2747753Z               "line": 156
2026-06-05T00:45:23.2748155Z             }
2026-06-05T00:45:23.2748561Z           ]
2026-06-05T00:45:23.2748965Z         }
2026-06-05T00:45:23.2749402Z       }
2026-06-05T00:45:23.2749801Z     },
2026-06-05T00:45:23.2750206Z     {
2026-06-05T00:45:23.2750757Z       "id": "REQ-HAZARD-UNC-PATH-STRIP",
2026-06-05T00:45:23.2751613Z       "title": "Strip Windows UNC prefix on serialized paths (5.4)",
2026-06-05T00:45:23.2752085Z       "requiredStages": [
2026-06-05T00:45:23.2752496Z         "impl",
2026-06-05T00:45:23.2752914Z         "unit"
2026-06-05T00:45:23.2753313Z       ],
2026-06-05T00:45:23.2753780Z       "stages": {
2026-06-05T00:45:23.2754188Z         "doc": {
2026-06-05T00:45:23.2754665Z           "complete": false,
2026-06-05T00:45:23.2755136Z           "evidence": []
2026-06-05T00:45:23.2755538Z         },
2026-06-05T00:45:23.2755958Z         "impl": {
2026-06-05T00:45:23.2756430Z           "complete": true,
2026-06-05T00:45:23.2756878Z           "evidence": [
2026-06-05T00:45:23.2757293Z             {
2026-06-05T00:45:23.2757909Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-05T00:45:23.2758347Z               "line": 35
2026-06-05T00:45:23.2758747Z             }
2026-06-05T00:45:23.2759195Z           ]
2026-06-05T00:45:23.2759608Z         },
2026-06-05T00:45:23.2760037Z         "int": {
2026-06-05T00:45:23.2760499Z           "complete": false,
2026-06-05T00:45:23.2760949Z           "evidence": []
2026-06-05T00:45:23.2761364Z         },
2026-06-05T00:45:23.2761773Z         "unit": {
2026-06-05T00:45:23.2762238Z           "complete": true,
2026-06-05T00:45:23.2762675Z           "evidence": [
2026-06-05T00:45:23.2763096Z             {
2026-06-05T00:45:23.2763695Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-05T00:45:23.2764345Z               "line": 217
2026-06-05T00:45:23.2764758Z             }
2026-06-05T00:45:23.2765344Z           ]
2026-06-05T00:45:23.2765766Z         }
2026-06-05T00:45:23.2766172Z       }
2026-06-05T00:45:23.2766581Z     },
2026-06-05T00:45:23.2766982Z     {
2026-06-05T00:45:23.2767527Z       "id": "REQ-HAZARD-UPDATE-ROLLBACK",
2026-06-05T00:45:23.2769124Z       "title": "Self-update rejects version rollback; metadata expiry + adapter content signing (codex #5)",
2026-06-05T00:45:23.2769885Z       "requiredStages": [
2026-06-05T00:45:23.2770316Z         "impl",
2026-06-05T00:45:23.2770728Z         "unit"
2026-06-05T00:45:23.2771141Z       ],
2026-06-05T00:45:23.2771561Z       "stages": {
2026-06-05T00:45:23.2771982Z         "doc": {
2026-06-05T00:45:23.2772453Z           "complete": false,
2026-06-05T00:45:23.2772899Z           "evidence": []
2026-06-05T00:45:23.2773309Z         },
2026-06-05T00:45:23.2773719Z         "impl": {
2026-06-05T00:45:23.2774200Z           "complete": true,
2026-06-05T00:45:23.2774638Z           "evidence": [
2026-06-05T00:45:23.2775055Z             {
2026-06-05T00:45:23.2775741Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-05T00:45:23.2776187Z               "line": 256
2026-06-05T00:45:23.2783525Z             },
2026-06-05T00:45:23.2784121Z             {
2026-06-05T00:45:23.2784808Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.2785264Z               "line": 221
2026-06-05T00:45:23.2785667Z             },
2026-06-05T00:45:23.2786081Z             {
2026-06-05T00:45:23.2786709Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-05T00:45:23.2787166Z               "line": 150
2026-06-05T00:45:23.2787569Z             }
2026-06-05T00:45:23.2787981Z           ]
2026-06-05T00:45:23.2788397Z         },
2026-06-05T00:45:23.2788809Z         "int": {
2026-06-05T00:45:23.2789364Z           "complete": false,
2026-06-05T00:45:23.2789817Z           "evidence": []
2026-06-05T00:45:23.2790287Z         },
2026-06-05T00:45:23.2790701Z         "unit": {
2026-06-05T00:45:23.2791165Z           "complete": true,
2026-06-05T00:45:23.2791619Z           "evidence": [
2026-06-05T00:45:23.2792037Z             {
2026-06-05T00:45:23.2792682Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.2793119Z               "line": 477
2026-06-05T00:45:23.2793531Z             },
2026-06-05T00:45:23.2793933Z             {
2026-06-05T00:45:23.2794574Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.2795021Z               "line": 488
2026-06-05T00:45:23.2795429Z             },
2026-06-05T00:45:23.2795842Z             {
2026-06-05T00:45:23.2796469Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.2796911Z               "line": 504
2026-06-05T00:45:23.2797319Z             },
2026-06-05T00:45:23.2797734Z             {
2026-06-05T00:45:23.2798372Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.2798822Z               "line": 518
2026-06-05T00:45:23.2799278Z             },
2026-06-05T00:45:23.2799696Z             {
2026-06-05T00:45:23.2800409Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-05T00:45:23.2800849Z               "line": 268
2026-06-05T00:45:23.2801261Z             }
2026-06-05T00:45:23.2801673Z           ]
2026-06-05T00:45:23.2802078Z         }
2026-06-05T00:45:23.2802490Z       }
2026-06-05T00:45:23.2802882Z     },
2026-06-05T00:45:23.2803288Z     {
2026-06-05T00:45:23.2803815Z       "id": "REQ-HAZARD-WAN-ORIGIN-AUTH",
2026-06-05T00:45:23.2808799Z       "title": "WAN-inbound origin is transport truth, never payload: the access gate's subject (ADR-0009 origin-node whitelist) is the QUIC handshake-proven remote node id from the broker's conn/stream table — a forged origin/node field inside record bytes is inert (7.5)",
2026-06-05T00:45:23.2809336Z       "requiredStages": [
2026-06-05T00:45:23.2809759Z         "doc",
2026-06-05T00:45:23.2810184Z         "impl",
2026-06-05T00:45:23.2810901Z         "unit"
2026-06-05T00:45:23.2811316Z       ],
2026-06-05T00:45:23.2811749Z       "stages": {
2026-06-05T00:45:23.2812304Z         "doc": {
2026-06-05T00:45:23.2812770Z           "complete": true,
2026-06-05T00:45:23.2813203Z           "evidence": [
2026-06-05T00:45:23.2813622Z             {
2026-06-05T00:45:23.2814173Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-05T00:45:23.2814624Z               "line": 266
2026-06-05T00:45:23.2815036Z             }
2026-06-05T00:45:23.2815437Z           ]
2026-06-05T00:45:23.2815851Z         },
2026-06-05T00:45:23.2816266Z         "impl": {
2026-06-05T00:45:23.2816726Z           "complete": true,
2026-06-05T00:45:23.2817162Z           "evidence": [
2026-06-05T00:45:23.2817580Z             {
2026-06-05T00:45:23.2818208Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-05T00:45:23.2818659Z               "line": 85
2026-06-05T00:45:23.2819074Z             },
2026-06-05T00:45:23.2819525Z             {
2026-06-05T00:45:23.2820188Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-05T00:45:23.2820625Z               "line": 99
2026-06-05T00:45:23.2821060Z             },
2026-06-05T00:45:23.2821472Z             {
2026-06-05T00:45:23.2822123Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-05T00:45:23.2822567Z               "line": 53
2026-06-05T00:45:23.2822975Z             },
2026-06-05T00:45:23.2823384Z             {
2026-06-05T00:45:23.2824032Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-05T00:45:23.2824474Z               "line": 89
2026-06-05T00:45:23.2824887Z             },
2026-06-05T00:45:23.2825293Z             {
2026-06-05T00:45:23.2825954Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-05T00:45:23.2826390Z               "line": 29
2026-06-05T00:45:23.2826810Z             },
2026-06-05T00:45:23.2827215Z             {
2026-06-05T00:45:23.2827879Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-05T00:45:23.2828322Z               "line": 75
2026-06-05T00:45:23.2828749Z             },
2026-06-05T00:45:23.2829202Z             {
2026-06-05T00:45:23.2829899Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.2830368Z               "line": 121
2026-06-05T00:45:23.2830779Z             },
2026-06-05T00:45:23.2831189Z             {
2026-06-05T00:45:23.2831787Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.2832227Z               "line": 40
2026-06-05T00:45:23.2832635Z             },
2026-06-05T00:45:23.2833037Z             {
2026-06-05T00:45:23.2833639Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.2834079Z               "line": 161
2026-06-05T00:45:23.2834501Z             },
2026-06-05T00:45:23.2834909Z             {
2026-06-05T00:45:23.2835497Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-05T00:45:23.2835937Z               "line": 70
2026-06-05T00:45:23.2836339Z             },
2026-06-05T00:45:23.2836751Z             {
2026-06-05T00:45:23.2837361Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-05T00:45:23.2837804Z               "line": 210
2026-06-05T00:45:23.2838236Z             },
2026-06-05T00:45:23.2838646Z             {
2026-06-05T00:45:23.2839343Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-05T00:45:23.2839782Z               "line": 37
2026-06-05T00:45:23.2840200Z             },
2026-06-05T00:45:23.2840599Z             {
2026-06-05T00:45:23.2841245Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-05T00:45:23.2841685Z               "line": 38
2026-06-05T00:45:23.2842097Z             },
2026-06-05T00:45:23.2842507Z             {
2026-06-05T00:45:23.2843133Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-05T00:45:23.2843578Z               "line": 36
2026-06-05T00:45:23.2843997Z             },
2026-06-05T00:45:23.2844400Z             {
2026-06-05T00:45:23.2845004Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-05T00:45:23.2845435Z               "line": 40
2026-06-05T00:45:23.2846027Z             }
2026-06-05T00:45:23.2846433Z           ]
2026-06-05T00:45:23.2846849Z         },
2026-06-05T00:45:23.2847384Z         "int": {
2026-06-05T00:45:23.2847855Z           "complete": false,
2026-06-05T00:45:23.2848305Z           "evidence": []
2026-06-05T00:45:23.2848705Z         },
2026-06-05T00:45:23.2849127Z         "unit": {
2026-06-05T00:45:23.2849626Z           "complete": true,
2026-06-05T00:45:23.2850073Z           "evidence": [
2026-06-05T00:45:23.2850476Z             {
2026-06-05T00:45:23.2851144Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-05T00:45:23.2851597Z               "line": 179
2026-06-05T00:45:23.2852012Z             },
2026-06-05T00:45:23.2852427Z             {
2026-06-05T00:45:23.2853105Z               "path": "crates/spt-daemon/tests/notifsync.rs",
2026-06-05T00:45:23.2853554Z               "line": 117
2026-06-05T00:45:23.2853973Z             },
2026-06-05T00:45:23.2854380Z             {
2026-06-05T00:45:23.2855070Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-05T00:45:23.2855529Z               "line": 344
2026-06-05T00:45:23.2855965Z             },
2026-06-05T00:45:23.2856375Z             {
2026-06-05T00:45:23.2857008Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-05T00:45:23.2857456Z               "line": 204
2026-06-05T00:45:23.2857863Z             },
2026-06-05T00:45:23.2858274Z             {
2026-06-05T00:45:23.2858911Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-05T00:45:23.2859398Z               "line": 147
2026-06-05T00:45:23.2859812Z             },
2026-06-05T00:45:23.2860229Z             {
2026-06-05T00:45:23.2860861Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-05T00:45:23.2861290Z               "line": 106
2026-06-05T00:45:23.2861709Z             },
2026-06-05T00:45:23.2862106Z             {
2026-06-05T00:45:23.2862734Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-05T00:45:23.2863359Z               "line": 142
2026-06-05T00:45:23.2863836Z             },
2026-06-05T00:45:23.2864322Z             {
2026-06-05T00:45:23.2865048Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-05T00:45:23.2870037Z               "line": 139
2026-06-05T00:45:23.2870691Z             },
2026-06-05T00:45:23.2871162Z             {
2026-06-05T00:45:23.2871889Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-05T00:45:23.2872388Z               "line": 126
2026-06-05T00:45:23.2872865Z             },
2026-06-05T00:45:23.2873311Z             {
2026-06-05T00:45:23.2873979Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-05T00:45:23.2874469Z               "line": 135
2026-06-05T00:45:23.2874939Z             }
2026-06-05T00:45:23.2875388Z           ]
2026-06-05T00:45:23.2875861Z         }
2026-06-05T00:45:23.2876324Z       }
2026-06-05T00:45:23.2876798Z     },
2026-06-05T00:45:23.2877281Z     {
2026-06-05T00:45:23.2877906Z       "id": "REQ-HAZARD-WINDOWS-PID-RECYCLE",
2026-06-05T00:45:23.2878846Z       "title": "Windows PID-recycling false positives guarded (5.1)",
2026-06-05T00:45:23.2879520Z       "requiredStages": [
2026-06-05T00:45:23.2880007Z         "impl",
2026-06-05T00:45:23.2880446Z         "unit"
2026-06-05T00:45:23.2880864Z       ],
2026-06-05T00:45:23.2881319Z       "stages": {
2026-06-05T00:45:23.2881746Z         "doc": {
2026-06-05T00:45:23.2882237Z           "complete": false,
2026-06-05T00:45:23.2882701Z           "evidence": []
2026-06-05T00:45:23.2883160Z         },
2026-06-05T00:45:23.2883603Z         "impl": {
2026-06-05T00:45:23.2884076Z           "complete": true,
2026-06-05T00:45:23.2884535Z           "evidence": [
2026-06-05T00:45:23.2884953Z             {
2026-06-05T00:45:23.2885586Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.2886034Z               "line": 95
2026-06-05T00:45:23.2886469Z             },
2026-06-05T00:45:23.2886896Z             {
2026-06-05T00:45:23.2887514Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.2888401Z               "line": 99
2026-06-05T00:45:23.2888826Z             }
2026-06-05T00:45:23.2889308Z           ]
2026-06-05T00:45:23.2890028Z         },
2026-06-05T00:45:23.2890458Z         "int": {
2026-06-05T00:45:23.2890927Z           "complete": false,
2026-06-05T00:45:23.2891371Z           "evidence": []
2026-06-05T00:45:23.2891782Z         },
2026-06-05T00:45:23.2892199Z         "unit": {
2026-06-05T00:45:23.2892814Z           "complete": true,
2026-06-05T00:45:23.2893288Z           "evidence": [
2026-06-05T00:45:23.2893762Z             {
2026-06-05T00:45:23.2894421Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.2894874Z               "line": 250
2026-06-05T00:45:23.2895309Z             },
2026-06-05T00:45:23.2895724Z             {
2026-06-05T00:45:23.2896346Z               "path": "crates/spt-store/src/proc.rs",
2026-06-05T00:45:23.2896800Z               "line": 139
2026-06-05T00:45:23.2897237Z             },
2026-06-05T00:45:23.2897663Z             {
2026-06-05T00:45:23.2898310Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.2898770Z               "line": 432
2026-06-05T00:45:23.2899261Z             },
2026-06-05T00:45:23.2899850Z             {
2026-06-05T00:45:23.2900447Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.2900896Z               "line": 462
2026-06-05T00:45:23.2901309Z             }
2026-06-05T00:45:23.2901713Z           ]
2026-06-05T00:45:23.2902122Z         }
2026-06-05T00:45:23.2902527Z       }
2026-06-05T00:45:23.2902932Z     },
2026-06-05T00:45:23.2903326Z     {
2026-06-05T00:45:23.2903863Z       "id": "REQ-HAZARD-WORKER-PATH",
2026-06-05T00:45:23.2904900Z       "title": "Single source of truth for Worker/Psyche perch location (1.5)",
2026-06-05T00:45:23.2905366Z       "requiredStages": [
2026-06-05T00:45:23.2905791Z         "impl",
2026-06-05T00:45:23.2906203Z         "unit"
2026-06-05T00:45:23.2906619Z       ],
2026-06-05T00:45:23.2907041Z       "stages": {
2026-06-05T00:45:23.2907474Z         "doc": {
2026-06-05T00:45:23.2907960Z           "complete": false,
2026-06-05T00:45:23.2908409Z           "evidence": []
2026-06-05T00:45:23.2908840Z         },
2026-06-05T00:45:23.2909450Z         "impl": {
2026-06-05T00:45:23.2909939Z           "complete": true,
2026-06-05T00:45:23.2910397Z           "evidence": [
2026-06-05T00:45:23.2910825Z             {
2026-06-05T00:45:23.2911461Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2911933Z               "line": 230
2026-06-05T00:45:23.2912374Z             },
2026-06-05T00:45:23.2912795Z             {
2026-06-05T00:45:23.2913425Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2913887Z               "line": 275
2026-06-05T00:45:23.2914310Z             },
2026-06-05T00:45:23.2914739Z             {
2026-06-05T00:45:23.2915359Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2915821Z               "line": 287
2026-06-05T00:45:23.2916246Z             }
2026-06-05T00:45:23.2916685Z           ]
2026-06-05T00:45:23.2917122Z         },
2026-06-05T00:45:23.2917548Z         "int": {
2026-06-05T00:45:23.2918032Z           "complete": false,
2026-06-05T00:45:23.2918517Z           "evidence": []
2026-06-05T00:45:23.2918946Z         },
2026-06-05T00:45:23.2919568Z         "unit": {
2026-06-05T00:45:23.2920043Z           "complete": true,
2026-06-05T00:45:23.2920482Z           "evidence": [
2026-06-05T00:45:23.2920906Z             {
2026-06-05T00:45:23.2921516Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2921959Z               "line": 423
2026-06-05T00:45:23.2922376Z             },
2026-06-05T00:45:23.2922785Z             {
2026-06-05T00:45:23.2923395Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.2923841Z               "line": 452
2026-06-05T00:45:23.2924250Z             }
2026-06-05T00:45:23.2924663Z           ]
2026-06-05T00:45:23.2925065Z         }
2026-06-05T00:45:23.2925477Z       }
2026-06-05T00:45:23.2925873Z     },
2026-06-05T00:45:23.2926496Z     {
2026-06-05T00:45:23.2926965Z       "id": "REQ-INFRA-1",
2026-06-05T00:45:23.2927999Z       "title": "GitHub issue tracking for v1; tangled.org as migration target",
2026-06-05T00:45:23.2928678Z       "requiredStages": [],
2026-06-05T00:45:23.2929111Z       "stages": {
2026-06-05T00:45:23.2929881Z         "doc": {
2026-06-05T00:45:23.2930346Z           "complete": false,
2026-06-05T00:45:23.2930800Z           "evidence": []
2026-06-05T00:45:23.2931212Z         },
2026-06-05T00:45:23.2931633Z         "impl": {
2026-06-05T00:45:23.2932103Z           "complete": false,
2026-06-05T00:45:23.2932545Z           "evidence": []
2026-06-05T00:45:23.2932958Z         },
2026-06-05T00:45:23.2933371Z         "int": {
2026-06-05T00:45:23.2933845Z           "complete": false,
2026-06-05T00:45:23.2934304Z           "evidence": []
2026-06-05T00:45:23.2934712Z         },
2026-06-05T00:45:23.2935146Z         "unit": {
2026-06-05T00:45:23.2935613Z           "complete": false,
2026-06-05T00:45:23.2936068Z           "evidence": []
2026-06-05T00:45:23.2936497Z         }
2026-06-05T00:45:23.2936911Z       }
2026-06-05T00:45:23.2937312Z     },
2026-06-05T00:45:23.2937739Z     {
2026-06-05T00:45:23.2938199Z       "id": "REQ-INST-1",
2026-06-05T00:45:23.2939072Z       "title": "endpoint ID vs instance split (adapter-agnostic ID)",
2026-06-05T00:45:23.2939908Z       "requiredStages": [],
2026-06-05T00:45:23.2940340Z       "stages": {
2026-06-05T00:45:23.2940771Z         "doc": {
2026-06-05T00:45:23.2941234Z           "complete": false,
2026-06-05T00:45:23.2941695Z           "evidence": []
2026-06-05T00:45:23.2942112Z         },
2026-06-05T00:45:23.2942532Z         "impl": {
2026-06-05T00:45:23.2943004Z           "complete": false,
2026-06-05T00:45:23.2943448Z           "evidence": []
2026-06-05T00:45:23.2943874Z         },
2026-06-05T00:45:23.2944288Z         "int": {
2026-06-05T00:45:23.2944766Z           "complete": false,
2026-06-05T00:45:23.2945221Z           "evidence": []
2026-06-05T00:45:23.2945626Z         },
2026-06-05T00:45:23.2946072Z         "unit": {
2026-06-05T00:45:23.2946531Z           "complete": false,
2026-06-05T00:45:23.2946981Z           "evidence": []
2026-06-05T00:45:23.2947401Z         }
2026-06-05T00:45:23.2947813Z       }
2026-06-05T00:45:23.2948225Z     },
2026-06-05T00:45:23.2948628Z     {
2026-06-05T00:45:23.2953564Z       "id": "REQ-INST-10",
2026-06-05T00:45:23.2955031Z       "title": "Qualified addressing [subnet:]id[@node] + ambiguity forces qualification",
2026-06-05T00:45:23.2955549Z       "requiredStages": [
2026-06-05T00:45:23.2955982Z         "impl",
2026-06-05T00:45:23.2956424Z         "unit"
2026-06-05T00:45:23.2956852Z       ],
2026-06-05T00:45:23.2957296Z       "stages": {
2026-06-05T00:45:23.2957731Z         "doc": {
2026-06-05T00:45:23.2958211Z           "complete": false,
2026-06-05T00:45:23.2958682Z           "evidence": []
2026-06-05T00:45:23.2959102Z         },
2026-06-05T00:45:23.2959852Z         "impl": {
2026-06-05T00:45:23.2960333Z           "complete": true,
2026-06-05T00:45:23.2960817Z           "evidence": [
2026-06-05T00:45:23.2961236Z             {
2026-06-05T00:45:23.2961893Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.2962364Z               "line": 413
2026-06-05T00:45:23.2962774Z             },
2026-06-05T00:45:23.2963195Z             {
2026-06-05T00:45:23.2963860Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.2964300Z               "line": 468
2026-06-05T00:45:23.2964721Z             },
2026-06-05T00:45:23.2965125Z             {
2026-06-05T00:45:23.2965728Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-05T00:45:23.2966176Z               "line": 13
2026-06-05T00:45:23.2966580Z             },
2026-06-05T00:45:23.2966997Z             {
2026-06-05T00:45:23.2967593Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-05T00:45:23.2968039Z               "line": 67
2026-06-05T00:45:23.2968452Z             },
2026-06-05T00:45:23.2968869Z             {
2026-06-05T00:45:23.2969497Z               "path": "crates/spt/src/wansend.rs",
2026-06-05T00:45:23.2970197Z               "line": 18
2026-06-05T00:45:23.2970614Z             }
2026-06-05T00:45:23.2971164Z           ]
2026-06-05T00:45:23.2971579Z         },
2026-06-05T00:45:23.2971995Z         "int": {
2026-06-05T00:45:23.2972468Z           "complete": false,
2026-06-05T00:45:23.2972926Z           "evidence": []
2026-06-05T00:45:23.2973334Z         },
2026-06-05T00:45:23.2973761Z         "unit": {
2026-06-05T00:45:23.2974216Z           "complete": true,
2026-06-05T00:45:23.2974673Z           "evidence": [
2026-06-05T00:45:23.2975081Z             {
2026-06-05T00:45:23.2975748Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.2976192Z               "line": 612
2026-06-05T00:45:23.2976604Z             },
2026-06-05T00:45:23.2977018Z             {
2026-06-05T00:45:23.2977671Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.2978120Z               "line": 709
2026-06-05T00:45:23.2978529Z             },
2026-06-05T00:45:23.2978966Z             {
2026-06-05T00:45:23.2979671Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.2980129Z               "line": 717
2026-06-05T00:45:23.2980545Z             },
2026-06-05T00:45:23.2980955Z             {
2026-06-05T00:45:23.2981615Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.2982056Z               "line": 730
2026-06-05T00:45:23.2982476Z             },
2026-06-05T00:45:23.2982897Z             {
2026-06-05T00:45:23.2983544Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.2983989Z               "line": 743
2026-06-05T00:45:23.2984393Z             },
2026-06-05T00:45:23.2984810Z             {
2026-06-05T00:45:23.2985451Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.2985905Z               "line": 759
2026-06-05T00:45:23.2986330Z             },
2026-06-05T00:45:23.2986736Z             {
2026-06-05T00:45:23.2987393Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.2987845Z               "line": 988
2026-06-05T00:45:23.2988267Z             },
2026-06-05T00:45:23.2988681Z             {
2026-06-05T00:45:23.2989331Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-05T00:45:23.2989783Z               "line": 121
2026-06-05T00:45:23.2990192Z             },
2026-06-05T00:45:23.2990608Z             {
2026-06-05T00:45:23.2991192Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-05T00:45:23.2991641Z               "line": 142
2026-06-05T00:45:23.2992046Z             },
2026-06-05T00:45:23.2992464Z             {
2026-06-05T00:45:23.2993063Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-05T00:45:23.2993502Z               "line": 150
2026-06-05T00:45:23.2993918Z             },
2026-06-05T00:45:23.2994325Z             {
2026-06-05T00:45:23.2994936Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-05T00:45:23.2995378Z               "line": 158
2026-06-05T00:45:23.2995809Z             }
2026-06-05T00:45:23.2996221Z           ]
2026-06-05T00:45:23.2996621Z         }
2026-06-05T00:45:23.2997032Z       }
2026-06-05T00:45:23.2997446Z     },
2026-06-05T00:45:23.2997854Z     {
2026-06-05T00:45:23.2998312Z       "id": "REQ-INST-11",
2026-06-05T00:45:23.2999625Z       "title": "spt rename <id> rippled to all instances (collision-checked, 6.5-reconciled)",
2026-06-05T00:45:23.3000108Z       "requiredStages": [
2026-06-05T00:45:23.3000525Z         "impl",
2026-06-05T00:45:23.3000939Z         "unit"
2026-06-05T00:45:23.3001334Z       ],
2026-06-05T00:45:23.3001770Z       "stages": {
2026-06-05T00:45:23.3002185Z         "doc": {
2026-06-05T00:45:23.3002654Z           "complete": false,
2026-06-05T00:45:23.3003112Z           "evidence": []
2026-06-05T00:45:23.3003519Z         },
2026-06-05T00:45:23.3003943Z         "impl": {
2026-06-05T00:45:23.3004399Z           "complete": true,
2026-06-05T00:45:23.3004839Z           "evidence": [
2026-06-05T00:45:23.3005242Z             {
2026-06-05T00:45:23.3006098Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3006560Z               "line": 315
2026-06-05T00:45:23.3007102Z             },
2026-06-05T00:45:23.3007521Z             {
2026-06-05T00:45:23.3008201Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.3008650Z               "line": 252
2026-06-05T00:45:23.3009060Z             },
2026-06-05T00:45:23.3009542Z             {
2026-06-05T00:45:23.3010168Z               "path": "crates/spt-store/src/rename.rs",
2026-06-05T00:45:23.3010605Z               "line": 59
2026-06-05T00:45:23.3011025Z             },
2026-06-05T00:45:23.3011433Z             {
2026-06-05T00:45:23.3011978Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3012428Z               "line": 1374
2026-06-05T00:45:23.3012833Z             },
2026-06-05T00:45:23.3013247Z             {
2026-06-05T00:45:23.3013780Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3014234Z               "line": 2319
2026-06-05T00:45:23.3014656Z             }
2026-06-05T00:45:23.3015068Z           ]
2026-06-05T00:45:23.3015474Z         },
2026-06-05T00:45:23.3015901Z         "int": {
2026-06-05T00:45:23.3016365Z           "complete": false,
2026-06-05T00:45:23.3016801Z           "evidence": []
2026-06-05T00:45:23.3017216Z         },
2026-06-05T00:45:23.3017625Z         "unit": {
2026-06-05T00:45:23.3018090Z           "complete": true,
2026-06-05T00:45:23.3018542Z           "evidence": [
2026-06-05T00:45:23.3018944Z             {
2026-06-05T00:45:23.3019646Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3020088Z               "line": 852
2026-06-05T00:45:23.3020501Z             },
2026-06-05T00:45:23.3020901Z             {
2026-06-05T00:45:23.3021560Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3022018Z               "line": 875
2026-06-05T00:45:23.3022428Z             },
2026-06-05T00:45:23.3022839Z             {
2026-06-05T00:45:23.3023526Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.3023995Z               "line": 471
2026-06-05T00:45:23.3024418Z             },
2026-06-05T00:45:23.3024836Z             {
2026-06-05T00:45:23.3025455Z               "path": "crates/spt-store/src/rename.rs",
2026-06-05T00:45:23.3025894Z               "line": 156
2026-06-05T00:45:23.3026309Z             },
2026-06-05T00:45:23.3026714Z             {
2026-06-05T00:45:23.3027337Z               "path": "crates/spt-store/src/rename.rs",
2026-06-05T00:45:23.3027776Z               "line": 177
2026-06-05T00:45:23.3028195Z             },
2026-06-05T00:45:23.3028610Z             {
2026-06-05T00:45:23.3029259Z               "path": "crates/spt-store/src/rename.rs",
2026-06-05T00:45:23.3029705Z               "line": 209
2026-06-05T00:45:23.3030110Z             },
2026-06-05T00:45:23.3030529Z             {
2026-06-05T00:45:23.3031064Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3031516Z               "line": 2412
2026-06-05T00:45:23.3034854Z             }
2026-06-05T00:45:23.3035381Z           ]
2026-06-05T00:45:23.3035798Z         }
2026-06-05T00:45:23.3036230Z       }
2026-06-05T00:45:23.3036642Z     },
2026-06-05T00:45:23.3037033Z     {
2026-06-05T00:45:23.3037509Z       "id": "REQ-INST-12",
2026-06-05T00:45:23.3039385Z       "title": "Endpoint visibility per-(endpoint,subnet): excluded semantics, OR-of-defaults + override, gates sync",
2026-06-05T00:45:23.3039871Z       "requiredStages": [
2026-06-05T00:45:23.3040301Z         "impl",
2026-06-05T00:45:23.3040717Z         "unit"
2026-06-05T00:45:23.3041132Z       ],
2026-06-05T00:45:23.3041550Z       "stages": {
2026-06-05T00:45:23.3041966Z         "doc": {
2026-06-05T00:45:23.3042434Z           "complete": false,
2026-06-05T00:45:23.3042876Z           "evidence": []
2026-06-05T00:45:23.3043295Z         },
2026-06-05T00:45:23.3043711Z         "impl": {
2026-06-05T00:45:23.3044177Z           "complete": true,
2026-06-05T00:45:23.3044612Z           "evidence": [
2026-06-05T00:45:23.3045275Z             {
2026-06-05T00:45:23.3045940Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3046529Z               "line": 367
2026-06-05T00:45:23.3046947Z             },
2026-06-05T00:45:23.3047346Z             {
2026-06-05T00:45:23.3048003Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3048436Z               "line": 424
2026-06-05T00:45:23.3048860Z             },
2026-06-05T00:45:23.3049318Z             {
2026-06-05T00:45:23.3049971Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3050418Z               "line": 482
2026-06-05T00:45:23.3050823Z             },
2026-06-05T00:45:23.3051234Z             {
2026-06-05T00:45:23.3051842Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.3052283Z               "line": 87
2026-06-05T00:45:23.3052697Z             },
2026-06-05T00:45:23.3053103Z             {
2026-06-05T00:45:23.3053717Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.3054174Z               "line": 216
2026-06-05T00:45:23.3054596Z             },
2026-06-05T00:45:23.3055001Z             {
2026-06-05T00:45:23.3055675Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-05T00:45:23.3056120Z               "line": 132
2026-06-05T00:45:23.3056521Z             }
2026-06-05T00:45:23.3056937Z           ]
2026-06-05T00:45:23.3057330Z         },
2026-06-05T00:45:23.3057751Z         "int": {
2026-06-05T00:45:23.3058205Z           "complete": false,
2026-06-05T00:45:23.3058654Z           "evidence": []
2026-06-05T00:45:23.3059064Z         },
2026-06-05T00:45:23.3059514Z         "unit": {
2026-06-05T00:45:23.3059980Z           "complete": true,
2026-06-05T00:45:23.3060421Z           "evidence": [
2026-06-05T00:45:23.3060834Z             {
2026-06-05T00:45:23.3061481Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3061933Z               "line": 910
2026-06-05T00:45:23.3062351Z             },
2026-06-05T00:45:23.3062773Z             {
2026-06-05T00:45:23.3063425Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3063879Z               "line": 927
2026-06-05T00:45:23.3064293Z             },
2026-06-05T00:45:23.3064701Z             {
2026-06-05T00:45:23.3065343Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3065785Z               "line": 958
2026-06-05T00:45:23.3066202Z             },
2026-06-05T00:45:23.3066616Z             {
2026-06-05T00:45:23.3067223Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.3067663Z               "line": 350
2026-06-05T00:45:23.3068078Z             },
2026-06-05T00:45:23.3068480Z             {
2026-06-05T00:45:23.3069135Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-05T00:45:23.3069615Z               "line": 169
2026-06-05T00:45:23.3070039Z             },
2026-06-05T00:45:23.3070442Z             {
2026-06-05T00:45:23.3071104Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-05T00:45:23.3071565Z               "line": 181
2026-06-05T00:45:23.3071977Z             },
2026-06-05T00:45:23.3072383Z             {
2026-06-05T00:45:23.3073044Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-05T00:45:23.3073492Z               "line": 198
2026-06-05T00:45:23.3073896Z             }
2026-06-05T00:45:23.3074307Z           ]
2026-06-05T00:45:23.3074718Z         }
2026-06-05T00:45:23.3075116Z       }
2026-06-05T00:45:23.3075522Z     },
2026-06-05T00:45:23.3075922Z     {
2026-06-05T00:45:23.3076383Z       "id": "REQ-INST-13",
2026-06-05T00:45:23.3077416Z       "title": "Subnet-exclusive sync + per-endpoint subnet-membership list",
2026-06-05T00:45:23.3077896Z       "requiredStages": [
2026-06-05T00:45:23.3078320Z         "impl",
2026-06-05T00:45:23.3078729Z         "unit"
2026-06-05T00:45:23.3079143Z       ],
2026-06-05T00:45:23.3079608Z       "stages": {
2026-06-05T00:45:23.3080029Z         "doc": {
2026-06-05T00:45:23.3080486Z           "complete": false,
2026-06-05T00:45:23.3081160Z           "evidence": []
2026-06-05T00:45:23.3081568Z         },
2026-06-05T00:45:23.3081984Z         "impl": {
2026-06-05T00:45:23.3082613Z           "complete": true,
2026-06-05T00:45:23.3083052Z           "evidence": [
2026-06-05T00:45:23.3083472Z             {
2026-06-05T00:45:23.3084075Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.3084519Z               "line": 94
2026-06-05T00:45:23.3084935Z             },
2026-06-05T00:45:23.3085333Z             {
2026-06-05T00:45:23.3085983Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-05T00:45:23.3086418Z               "line": 155
2026-06-05T00:45:23.3086827Z             }
2026-06-05T00:45:23.3087220Z           ]
2026-06-05T00:45:23.3087620Z         },
2026-06-05T00:45:23.3088042Z         "int": {
2026-06-05T00:45:23.3088498Z           "complete": false,
2026-06-05T00:45:23.3088944Z           "evidence": []
2026-06-05T00:45:23.3089381Z         },
2026-06-05T00:45:23.3089807Z         "unit": {
2026-06-05T00:45:23.3090284Z           "complete": true,
2026-06-05T00:45:23.3090730Z           "evidence": [
2026-06-05T00:45:23.3091161Z             {
2026-06-05T00:45:23.3091820Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-05T00:45:23.3092270Z               "line": 221
2026-06-05T00:45:23.3092676Z             },
2026-06-05T00:45:23.3093081Z             {
2026-06-05T00:45:23.3093731Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-05T00:45:23.3094180Z               "line": 233
2026-06-05T00:45:23.3094593Z             }
2026-06-05T00:45:23.3094999Z           ]
2026-06-05T00:45:23.3095406Z         }
2026-06-05T00:45:23.3095807Z       }
2026-06-05T00:45:23.3096215Z     },
2026-06-05T00:45:23.3096606Z     {
2026-06-05T00:45:23.3097068Z       "id": "REQ-INST-14",
2026-06-05T00:45:23.3099508Z       "title": "Resource advertisement (subnet resource registry): free-text blurb, both-authored, registry projection, visibility/whitelist-gated",
2026-06-05T00:45:23.3099997Z       "requiredStages": [
2026-06-05T00:45:23.3100414Z         "doc",
2026-06-05T00:45:23.3100838Z         "impl",
2026-06-05T00:45:23.3101270Z         "unit"
2026-06-05T00:45:23.3101669Z       ],
2026-06-05T00:45:23.3102098Z       "stages": {
2026-06-05T00:45:23.3102510Z         "doc": {
2026-06-05T00:45:23.3102959Z           "complete": true,
2026-06-05T00:45:23.3103402Z           "evidence": [
2026-06-05T00:45:23.3103803Z             {
2026-06-05T00:45:23.3104307Z               "path": "docs/STORAGE.md",
2026-06-05T00:45:23.3104734Z               "line": 49
2026-06-05T00:45:23.3105147Z             }
2026-06-05T00:45:23.3105561Z           ]
2026-06-05T00:45:23.3105964Z         },
2026-06-05T00:45:23.3106391Z         "impl": {
2026-06-05T00:45:23.3106843Z           "complete": true,
2026-06-05T00:45:23.3107287Z           "evidence": [
2026-06-05T00:45:23.3107687Z             {
2026-06-05T00:45:23.3108403Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.3108851Z               "line": 242
2026-06-05T00:45:23.3109314Z             },
2026-06-05T00:45:23.3109727Z             {
2026-06-05T00:45:23.3110383Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3110838Z               "line": 182
2026-06-05T00:45:23.3111243Z             },
2026-06-05T00:45:23.3111653Z             {
2026-06-05T00:45:23.3112248Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.3112684Z               "line": 202
2026-06-05T00:45:23.3113107Z             },
2026-06-05T00:45:23.3113508Z             {
2026-06-05T00:45:23.3116763Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3117313Z               "line": 685
2026-06-05T00:45:23.3117745Z             }
2026-06-05T00:45:23.3118160Z           ]
2026-06-05T00:45:23.3118563Z         },
2026-06-05T00:45:23.3118982Z         "int": {
2026-06-05T00:45:23.3119518Z           "complete": false,
2026-06-05T00:45:23.3119980Z           "evidence": []
2026-06-05T00:45:23.3120378Z         },
2026-06-05T00:45:23.3121069Z         "unit": {
2026-06-05T00:45:23.3121539Z           "complete": true,
2026-06-05T00:45:23.3121972Z           "evidence": [
2026-06-05T00:45:23.3122537Z             {
2026-06-05T00:45:23.3123252Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.3123697Z               "line": 391
2026-06-05T00:45:23.3124098Z             },
2026-06-05T00:45:23.3124511Z             {
2026-06-05T00:45:23.3125168Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3125608Z               "line": 621
2026-06-05T00:45:23.3126024Z             },
2026-06-05T00:45:23.3126426Z             {
2026-06-05T00:45:23.3127079Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3127522Z               "line": 662
2026-06-05T00:45:23.3127928Z             },
2026-06-05T00:45:23.3128334Z             {
2026-06-05T00:45:23.3128918Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.3129401Z               "line": 411
2026-06-05T00:45:23.3129836Z             },
2026-06-05T00:45:23.3130244Z             {
2026-06-05T00:45:23.3130785Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3131234Z               "line": 2428
2026-06-05T00:45:23.3131644Z             }
2026-06-05T00:45:23.3132044Z           ]
2026-06-05T00:45:23.3132451Z         }
2026-06-05T00:45:23.3132851Z       }
2026-06-05T00:45:23.3133259Z     },
2026-06-05T00:45:23.3133658Z     {
2026-06-05T00:45:23.3134120Z       "id": "REQ-INST-15",
2026-06-05T00:45:23.3138943Z       "title": "Immutable home subnet (assigned at creation: auto-if-one/ask-if-many) + spt fork (cross-subnet clone to a new identity, copy-then-diverge, not re-home); adapter chosen at creation from registered hostable adapters, changed only via launch/resume-under-new (ADR-0010)",
2026-06-05T00:45:23.3139450Z       "requiredStages": [
2026-06-05T00:45:23.3139872Z         "doc",
2026-06-05T00:45:23.3140291Z         "impl",
2026-06-05T00:45:23.3140709Z         "unit"
2026-06-05T00:45:23.3141125Z       ],
2026-06-05T00:45:23.3141545Z       "stages": {
2026-06-05T00:45:23.3141961Z         "doc": {
2026-06-05T00:45:23.3142425Z           "complete": true,
2026-06-05T00:45:23.3142863Z           "evidence": [
2026-06-05T00:45:23.3143263Z             {
2026-06-05T00:45:23.3144246Z               "path": "docs/adr/0010-immutable-home-subnet-fork-not-rehome.md",
2026-06-05T00:45:23.3144679Z               "line": 3
2026-06-05T00:45:23.3145085Z             }
2026-06-05T00:45:23.3145494Z           ]
2026-06-05T00:45:23.3145897Z         },
2026-06-05T00:45:23.3146320Z         "impl": {
2026-06-05T00:45:23.3146773Z           "complete": true,
2026-06-05T00:45:23.3147219Z           "evidence": [
2026-06-05T00:45:23.3147631Z             {
2026-06-05T00:45:23.3148324Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.3148766Z               "line": 206
2026-06-05T00:45:23.3149274Z             },
2026-06-05T00:45:23.3149696Z             {
2026-06-05T00:45:23.3150271Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-05T00:45:23.3150733Z               "line": 60
2026-06-05T00:45:23.3151143Z             },
2026-06-05T00:45:23.3151557Z             {
2026-06-05T00:45:23.3152253Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.3152689Z               "line": 326
2026-06-05T00:45:23.3153106Z             },
2026-06-05T00:45:23.3153515Z             {
2026-06-05T00:45:23.3154194Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.3154640Z               "line": 376
2026-06-05T00:45:23.3155043Z             },
2026-06-05T00:45:23.3155455Z             {
2026-06-05T00:45:23.3156040Z               "path": "crates/spt-store/src/home.rs",
2026-06-05T00:45:23.3156474Z               "line": 19
2026-06-05T00:45:23.3156884Z             },
2026-06-05T00:45:23.3157284Z             {
2026-06-05T00:45:23.3157875Z               "path": "crates/spt-store/src/home.rs",
2026-06-05T00:45:23.3158311Z               "line": 67
2026-06-05T00:45:23.3158916Z             },
2026-06-05T00:45:23.3159376Z             {
2026-06-05T00:45:23.3159981Z               "path": "crates/spt-store/src/home.rs",
2026-06-05T00:45:23.3160597Z               "line": 91
2026-06-05T00:45:23.3161010Z             },
2026-06-05T00:45:23.3161420Z             {
2026-06-05T00:45:23.3162006Z               "path": "crates/spt-store/src/home.rs",
2026-06-05T00:45:23.3162459Z               "line": 116
2026-06-05T00:45:23.3162863Z             },
2026-06-05T00:45:23.3163277Z             {
2026-06-05T00:45:23.3163871Z               "path": "crates/spt-store/src/home.rs",
2026-06-05T00:45:23.3164305Z               "line": 167
2026-06-05T00:45:23.3164720Z             },
2026-06-05T00:45:23.3165122Z             {
2026-06-05T00:45:23.3165730Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.3166163Z               "line": 141
2026-06-05T00:45:23.3166577Z             },
2026-06-05T00:45:23.3166986Z             {
2026-06-05T00:45:23.3167520Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3167979Z               "line": 577
2026-06-05T00:45:23.3168382Z             }
2026-06-05T00:45:23.3168805Z           ]
2026-06-05T00:45:23.3169253Z         },
2026-06-05T00:45:23.3169678Z         "int": {
2026-06-05T00:45:23.3170137Z           "complete": false,
2026-06-05T00:45:23.3170571Z           "evidence": []
2026-06-05T00:45:23.3170977Z         },
2026-06-05T00:45:23.3171393Z         "unit": {
2026-06-05T00:45:23.3171843Z           "complete": true,
2026-06-05T00:45:23.3172276Z           "evidence": [
2026-06-05T00:45:23.3172692Z             {
2026-06-05T00:45:23.3173381Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.3173816Z               "line": 515
2026-06-05T00:45:23.3174234Z             },
2026-06-05T00:45:23.3174636Z             {
2026-06-05T00:45:23.3175332Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.3175773Z               "line": 571
2026-06-05T00:45:23.3176194Z             },
2026-06-05T00:45:23.3176625Z             {
2026-06-05T00:45:23.3177210Z               "path": "crates/spt-store/src/home.rs",
2026-06-05T00:45:23.3177665Z               "line": 206
2026-06-05T00:45:23.3178073Z             },
2026-06-05T00:45:23.3178485Z             {
2026-06-05T00:45:23.3179063Z               "path": "crates/spt-store/src/home.rs",
2026-06-05T00:45:23.3179555Z               "line": 239
2026-06-05T00:45:23.3179969Z             },
2026-06-05T00:45:23.3180367Z             {
2026-06-05T00:45:23.3180959Z               "path": "crates/spt-store/src/home.rs",
2026-06-05T00:45:23.3181399Z               "line": 252
2026-06-05T00:45:23.3181812Z             },
2026-06-05T00:45:23.3182213Z             {
2026-06-05T00:45:23.3182813Z               "path": "crates/spt-store/src/home.rs",
2026-06-05T00:45:23.3183257Z               "line": 316
2026-06-05T00:45:23.3183663Z             },
2026-06-05T00:45:23.3184070Z             {
2026-06-05T00:45:23.3184666Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.3185121Z               "line": 477
2026-06-05T00:45:23.3185530Z             },
2026-06-05T00:45:23.3185930Z             {
2026-06-05T00:45:23.3186485Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3186927Z               "line": 2415
2026-06-05T00:45:23.3187339Z             },
2026-06-05T00:45:23.3187749Z             {
2026-06-05T00:45:23.3188290Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3188745Z               "line": 3254
2026-06-05T00:45:23.3189223Z             }
2026-06-05T00:45:23.3189671Z           ]
2026-06-05T00:45:23.3190071Z         }
2026-06-05T00:45:23.3190472Z       }
2026-06-05T00:45:23.3190865Z     },
2026-06-05T00:45:23.3191269Z     {
2026-06-05T00:45:23.3191722Z       "id": "REQ-INST-2",
2026-06-05T00:45:23.3192366Z       "title": "Per-node files, synced Psyche mind",
2026-06-05T00:45:23.3192835Z       "requiredStages": [
2026-06-05T00:45:23.3193246Z         "impl",
2026-06-05T00:45:23.3193654Z         "unit"
2026-06-05T00:45:23.3194237Z       ],
2026-06-05T00:45:23.3194670Z       "stages": {
2026-06-05T00:45:23.3195081Z         "doc": {
2026-06-05T00:45:23.3195696Z           "complete": false,
2026-06-05T00:45:23.3196156Z           "evidence": []
2026-06-05T00:45:23.3196563Z         },
2026-06-05T00:45:23.3199865Z         "impl": {
2026-06-05T00:45:23.3200441Z           "complete": true,
2026-06-05T00:45:23.3200899Z           "evidence": [
2026-06-05T00:45:23.3201306Z             {
2026-06-05T00:45:23.3201995Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.3202439Z               "line": 86
2026-06-05T00:45:23.3202854Z             },
2026-06-05T00:45:23.3203272Z             {
2026-06-05T00:45:23.3203870Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-05T00:45:23.3204303Z               "line": 28
2026-06-05T00:45:23.3204713Z             },
2026-06-05T00:45:23.3205115Z             {
2026-06-05T00:45:23.3205722Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-05T00:45:23.3206198Z               "line": 74
2026-06-05T00:45:23.3206613Z             },
2026-06-05T00:45:23.3207021Z             {
2026-06-05T00:45:23.3207643Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-05T00:45:23.3208081Z               "line": 96
2026-06-05T00:45:23.3208489Z             },
2026-06-05T00:45:23.3208896Z             {
2026-06-05T00:45:23.3209540Z               "path": "crates/spt-live/src/resume.rs",
2026-06-05T00:45:23.3209992Z               "line": 81
2026-06-05T00:45:23.3210391Z             },
2026-06-05T00:45:23.3210805Z             {
2026-06-05T00:45:23.3211410Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-05T00:45:23.3211842Z               "line": 118
2026-06-05T00:45:23.3212252Z             }
2026-06-05T00:45:23.3212658Z           ]
2026-06-05T00:45:23.3213071Z         },
2026-06-05T00:45:23.3213476Z         "int": {
2026-06-05T00:45:23.3213939Z           "complete": false,
2026-06-05T00:45:23.3214387Z           "evidence": []
2026-06-05T00:45:23.3214805Z         },
2026-06-05T00:45:23.3215225Z         "unit": {
2026-06-05T00:45:23.3215677Z           "complete": true,
2026-06-05T00:45:23.3216129Z           "evidence": [
2026-06-05T00:45:23.3216530Z             {
2026-06-05T00:45:23.3217128Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-05T00:45:23.3217572Z               "line": 203
2026-06-05T00:45:23.3217979Z             },
2026-06-05T00:45:23.3218389Z             {
2026-06-05T00:45:23.3218982Z               "path": "crates/spt-live/src/resume.rs",
2026-06-05T00:45:23.3219466Z               "line": 232
2026-06-05T00:45:23.3219870Z             }
2026-06-05T00:45:23.3220278Z           ]
2026-06-05T00:45:23.3220685Z         }
2026-06-05T00:45:23.3221083Z       }
2026-06-05T00:45:23.3221481Z     },
2026-06-05T00:45:23.3221871Z     {
2026-06-05T00:45:23.3222325Z       "id": "REQ-INST-3",
2026-06-05T00:45:23.3223121Z       "title": "Dormant (warm) / suspended (cold) resting states",
2026-06-05T00:45:23.3223602Z       "requiredStages": [
2026-06-05T00:45:23.3224028Z         "doc",
2026-06-05T00:45:23.3224444Z         "impl",
2026-06-05T00:45:23.3224858Z         "unit"
2026-06-05T00:45:23.3225274Z       ],
2026-06-05T00:45:23.3225713Z       "stages": {
2026-06-05T00:45:23.3226116Z         "doc": {
2026-06-05T00:45:23.3226579Z           "complete": true,
2026-06-05T00:45:23.3227017Z           "evidence": [
2026-06-05T00:45:23.3227419Z             {
2026-06-05T00:45:23.3227983Z               "path": "docs/DORMANCY-BUDGET.md",
2026-06-05T00:45:23.3228408Z               "line": 3
2026-06-05T00:45:23.3228818Z             }
2026-06-05T00:45:23.3229253Z           ]
2026-06-05T00:45:23.3229665Z         },
2026-06-05T00:45:23.3230087Z         "impl": {
2026-06-05T00:45:23.3230552Z           "complete": true,
2026-06-05T00:45:23.3230994Z           "evidence": [
2026-06-05T00:45:23.3231392Z             {
2026-06-05T00:45:23.3232028Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-05T00:45:23.3232460Z               "line": 70
2026-06-05T00:45:23.3233217Z             },
2026-06-05T00:45:23.3233635Z             {
2026-06-05T00:45:23.3234277Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-05T00:45:23.3234863Z               "line": 385
2026-06-05T00:45:23.3235274Z             },
2026-06-05T00:45:23.3235685Z             {
2026-06-05T00:45:23.3236339Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.3236783Z               "line": 197
2026-06-05T00:45:23.3237197Z             },
2026-06-05T00:45:23.3237596Z             {
2026-06-05T00:45:23.3238252Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.3238691Z               "line": 272
2026-06-05T00:45:23.3239109Z             },
2026-06-05T00:45:23.3239565Z             {
2026-06-05T00:45:23.3240230Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.3240677Z               "line": 301
2026-06-05T00:45:23.3241084Z             },
2026-06-05T00:45:23.3241498Z             {
2026-06-05T00:45:23.3242146Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-05T00:45:23.3242610Z               "line": 234
2026-06-05T00:45:23.3243031Z             },
2026-06-05T00:45:23.3243447Z             {
2026-06-05T00:45:23.3244143Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.3244577Z               "line": 147
2026-06-05T00:45:23.3244986Z             },
2026-06-05T00:45:23.3245386Z             {
2026-06-05T00:45:23.3246083Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.3246517Z               "line": 228
2026-06-05T00:45:23.3246932Z             },
2026-06-05T00:45:23.3247353Z             {
2026-06-05T00:45:23.3247982Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3248418Z               "line": 44
2026-06-05T00:45:23.3248819Z             },
2026-06-05T00:45:23.3249267Z             {
2026-06-05T00:45:23.3249891Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3250339Z               "line": 113
2026-06-05T00:45:23.3250759Z             },
2026-06-05T00:45:23.3251154Z             {
2026-06-05T00:45:23.3251793Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3252238Z               "line": 151
2026-06-05T00:45:23.3252645Z             },
2026-06-05T00:45:23.3253051Z             {
2026-06-05T00:45:23.3253687Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3254129Z               "line": 167
2026-06-05T00:45:23.3254536Z             },
2026-06-05T00:45:23.3254948Z             {
2026-06-05T00:45:23.3255574Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3256011Z               "line": 177
2026-06-05T00:45:23.3256416Z             },
2026-06-05T00:45:23.3256817Z             {
2026-06-05T00:45:23.3257450Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3257885Z               "line": 209
2026-06-05T00:45:23.3258323Z             },
2026-06-05T00:45:23.3258806Z             {
2026-06-05T00:45:23.3259545Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3260002Z               "line": 282
2026-06-05T00:45:23.3260427Z             },
2026-06-05T00:45:23.3260837Z             {
2026-06-05T00:45:23.3261476Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3261914Z               "line": 306
2026-06-05T00:45:23.3262317Z             },
2026-06-05T00:45:23.3262730Z             {
2026-06-05T00:45:23.3263368Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3263806Z               "line": 377
2026-06-05T00:45:23.3264217Z             },
2026-06-05T00:45:23.3264614Z             {
2026-06-05T00:45:23.3265254Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3265690Z               "line": 392
2026-06-05T00:45:23.3266107Z             },
2026-06-05T00:45:23.3266517Z             {
2026-06-05T00:45:23.3267154Z               "path": "crates/spt-daemon/tests/budget.rs",
2026-06-05T00:45:23.3267589Z               "line": 37
2026-06-05T00:45:23.3268185Z             },
2026-06-05T00:45:23.3268594Z             {
2026-06-05T00:45:23.3269437Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3269895Z               "line": 62
2026-06-05T00:45:23.3270309Z             },
2026-06-05T00:45:23.3270707Z             {
2026-06-05T00:45:23.3271297Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.3271741Z               "line": 184
2026-06-05T00:45:23.3272154Z             },
2026-06-05T00:45:23.3272556Z             {
2026-06-05T00:45:23.3273097Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3273536Z               "line": 782
2026-06-05T00:45:23.3273936Z             }
2026-06-05T00:45:23.3274341Z           ]
2026-06-05T00:45:23.3274737Z         },
2026-06-05T00:45:23.3275153Z         "int": {
2026-06-05T00:45:23.3275611Z           "complete": false,
2026-06-05T00:45:23.3276057Z           "evidence": []
2026-06-05T00:45:23.3279296Z         },
2026-06-05T00:45:23.3279894Z         "unit": {
2026-06-05T00:45:23.3280376Z           "complete": true,
2026-06-05T00:45:23.3280824Z           "evidence": [
2026-06-05T00:45:23.3281256Z             {
2026-06-05T00:45:23.3281908Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-05T00:45:23.3282359Z               "line": 305
2026-06-05T00:45:23.3282780Z             },
2026-06-05T00:45:23.3283178Z             {
2026-06-05T00:45:23.3283837Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.3284270Z               "line": 618
2026-06-05T00:45:23.3284686Z             },
2026-06-05T00:45:23.3285089Z             {
2026-06-05T00:45:23.3285747Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.3286200Z               "line": 669
2026-06-05T00:45:23.3286606Z             },
2026-06-05T00:45:23.3287017Z             {
2026-06-05T00:45:23.3287708Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.3288157Z               "line": 441
2026-06-05T00:45:23.3288588Z             },
2026-06-05T00:45:23.3288993Z             {
2026-06-05T00:45:23.3289952Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.3290578Z               "line": 488
2026-06-05T00:45:23.3290996Z             },
2026-06-05T00:45:23.3291396Z             {
2026-06-05T00:45:23.3292028Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3292474Z               "line": 403
2026-06-05T00:45:23.3292882Z             },
2026-06-05T00:45:23.3293292Z             {
2026-06-05T00:45:23.3293928Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3294371Z               "line": 432
2026-06-05T00:45:23.3294773Z             },
2026-06-05T00:45:23.3295181Z             {
2026-06-05T00:45:23.3295817Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3296255Z               "line": 465
2026-06-05T00:45:23.3296671Z             },
2026-06-05T00:45:23.3297114Z             {
2026-06-05T00:45:23.3297796Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3298228Z               "line": 573
2026-06-05T00:45:23.3298663Z             },
2026-06-05T00:45:23.3299070Z             {
2026-06-05T00:45:23.3299737Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3300180Z               "line": 748
2026-06-05T00:45:23.3300581Z             },
2026-06-05T00:45:23.3300987Z             {
2026-06-05T00:45:23.3301616Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3302064Z               "line": 762
2026-06-05T00:45:23.3302472Z             },
2026-06-05T00:45:23.3302870Z             {
2026-06-05T00:45:23.3303516Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3303954Z               "line": 690
2026-06-05T00:45:23.3304372Z             },
2026-06-05T00:45:23.3304774Z             {
2026-06-05T00:45:23.3305374Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.3305820Z               "line": 371
2026-06-05T00:45:23.3306483Z             },
2026-06-05T00:45:23.3306896Z             {
2026-06-05T00:45:23.3307575Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3308033Z               "line": 2442
2026-06-05T00:45:23.3308445Z             }
2026-06-05T00:45:23.3308842Z           ]
2026-06-05T00:45:23.3309294Z         }
2026-06-05T00:45:23.3309694Z       }
2026-06-05T00:45:23.3310096Z     },
2026-06-05T00:45:23.3310490Z     {
2026-06-05T00:45:23.3310942Z       "id": "REQ-INST-4",
2026-06-05T00:45:23.3311926Z       "title": "active to dormant/suspended fires a transition echo commune",
2026-06-05T00:45:23.3312401Z       "requiredStages": [
2026-06-05T00:45:23.3312818Z         "impl",
2026-06-05T00:45:23.3313225Z         "unit"
2026-06-05T00:45:23.3313633Z       ],
2026-06-05T00:45:23.3314043Z       "stages": {
2026-06-05T00:45:23.3314465Z         "doc": {
2026-06-05T00:45:23.3314924Z           "complete": false,
2026-06-05T00:45:23.3315373Z           "evidence": []
2026-06-05T00:45:23.3315792Z         },
2026-06-05T00:45:23.3316208Z         "impl": {
2026-06-05T00:45:23.3316672Z           "complete": true,
2026-06-05T00:45:23.3317119Z           "evidence": [
2026-06-05T00:45:23.3317527Z             {
2026-06-05T00:45:23.3318187Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.3318628Z               "line": 273
2026-06-05T00:45:23.3319045Z             },
2026-06-05T00:45:23.3319491Z             {
2026-06-05T00:45:23.3320138Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3320573Z               "line": 201
2026-06-05T00:45:23.3321003Z             },
2026-06-05T00:45:23.3321469Z             {
2026-06-05T00:45:23.3322348Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3322895Z               "line": 233
2026-06-05T00:45:23.3323403Z             },
2026-06-05T00:45:23.3323931Z             {
2026-06-05T00:45:23.3324762Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3325403Z               "line": 269
2026-06-05T00:45:23.3325900Z             }
2026-06-05T00:45:23.3326369Z           ]
2026-06-05T00:45:23.3326882Z         },
2026-06-05T00:45:23.3327390Z         "int": {
2026-06-05T00:45:23.3327965Z           "complete": false,
2026-06-05T00:45:23.3328523Z           "evidence": []
2026-06-05T00:45:23.3329020Z         },
2026-06-05T00:45:23.3329622Z         "unit": {
2026-06-05T00:45:23.3330164Z           "complete": true,
2026-06-05T00:45:23.3330645Z           "evidence": [
2026-06-05T00:45:23.3331079Z             {
2026-06-05T00:45:23.3331819Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.3332315Z               "line": 664
2026-06-05T00:45:23.3332790Z             },
2026-06-05T00:45:23.3333264Z             {
2026-06-05T00:45:23.3334006Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3334507Z               "line": 483
2026-06-05T00:45:23.3335015Z             },
2026-06-05T00:45:23.3335524Z             {
2026-06-05T00:45:23.3336252Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3336740Z               "line": 548
2026-06-05T00:45:23.3337202Z             },
2026-06-05T00:45:23.3337639Z             {
2026-06-05T00:45:23.3338338Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.3338850Z               "line": 615
2026-06-05T00:45:23.3339367Z             }
2026-06-05T00:45:23.3339983Z           ]
2026-06-05T00:45:23.3340447Z         }
2026-06-05T00:45:23.3340894Z       }
2026-06-05T00:45:23.3341305Z     },
2026-06-05T00:45:23.3341713Z     {
2026-06-05T00:45:23.3342185Z       "id": "REQ-INST-5",
2026-06-05T00:45:23.3343265Z       "title": "Two-tier context sync (live to all, project to same-project)",
2026-06-05T00:45:23.3343763Z       "requiredStages": [
2026-06-05T00:45:23.3344231Z         "impl",
2026-06-05T00:45:23.3344698Z         "unit",
2026-06-05T00:45:23.3345157Z         "int"
2026-06-05T00:45:23.3345598Z       ],
2026-06-05T00:45:23.3346359Z       "stages": {
2026-06-05T00:45:23.3346785Z         "doc": {
2026-06-05T00:45:23.3347256Z           "complete": false,
2026-06-05T00:45:23.3347912Z           "evidence": []
2026-06-05T00:45:23.3348324Z         },
2026-06-05T00:45:23.3348751Z         "impl": {
2026-06-05T00:45:23.3349269Z           "complete": true,
2026-06-05T00:45:23.3350052Z           "evidence": [
2026-06-05T00:45:23.3350490Z             {
2026-06-05T00:45:23.3351176Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-05T00:45:23.3351632Z               "line": 39
2026-06-05T00:45:23.3352043Z             },
2026-06-05T00:45:23.3352458Z             {
2026-06-05T00:45:23.3353069Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.3353507Z               "line": 68
2026-06-05T00:45:23.3353922Z             },
2026-06-05T00:45:23.3354321Z             {
2026-06-05T00:45:23.3354923Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.3355355Z               "line": 93
2026-06-05T00:45:23.3355787Z             },
2026-06-05T00:45:23.3356205Z             {
2026-06-05T00:45:23.3356802Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.3362499Z               "line": 160
2026-06-05T00:45:23.3363054Z             },
2026-06-05T00:45:23.3363488Z             {
2026-06-05T00:45:23.3364118Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.3364576Z               "line": 271
2026-06-05T00:45:23.3364992Z             }
2026-06-05T00:45:23.3365399Z           ]
2026-06-05T00:45:23.3365819Z         },
2026-06-05T00:45:23.3366227Z         "int": {
2026-06-05T00:45:23.3366692Z           "complete": true,
2026-06-05T00:45:23.3367127Z           "evidence": [
2026-06-05T00:45:23.3367548Z             {
2026-06-05T00:45:23.3368233Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-05T00:45:23.3368673Z               "line": 142
2026-06-05T00:45:23.3369092Z             },
2026-06-05T00:45:23.3369721Z             {
2026-06-05T00:45:23.3370444Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-05T00:45:23.3370937Z               "line": 102
2026-06-05T00:45:23.3371387Z             },
2026-06-05T00:45:23.3371822Z             {
2026-06-05T00:45:23.3372496Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.3372962Z               "line": 517
2026-06-05T00:45:23.3373388Z             },
2026-06-05T00:45:23.3373821Z             {
2026-06-05T00:45:23.3374497Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.3374958Z               "line": 723
2026-06-05T00:45:23.3375391Z             }
2026-06-05T00:45:23.3375818Z           ]
2026-06-05T00:45:23.3376245Z         },
2026-06-05T00:45:23.3376677Z         "unit": {
2026-06-05T00:45:23.3377156Z           "complete": true,
2026-06-05T00:45:23.3377602Z           "evidence": [
2026-06-05T00:45:23.3378034Z             {
2026-06-05T00:45:23.3378660Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.3379110Z               "line": 461
2026-06-05T00:45:23.3379602Z             },
2026-06-05T00:45:23.3380025Z             {
2026-06-05T00:45:23.3380649Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.3381116Z               "line": 495
2026-06-05T00:45:23.3381559Z             },
2026-06-05T00:45:23.3381987Z             {
2026-06-05T00:45:23.3382628Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-05T00:45:23.3383096Z               "line": 199
2026-06-05T00:45:23.3383515Z             }
2026-06-05T00:45:23.3383940Z           ]
2026-06-05T00:45:23.3384358Z         }
2026-06-05T00:45:23.3384791Z       }
2026-06-05T00:45:23.3385208Z     },
2026-06-05T00:45:23.3385621Z     {
2026-06-05T00:45:23.3386101Z       "id": "REQ-INST-6",
2026-06-05T00:45:23.3387193Z       "title": "Deferred messages not delivered to dormant/suspended instances",
2026-06-05T00:45:23.3387698Z       "requiredStages": [],
2026-06-05T00:45:23.3388140Z       "stages": {
2026-06-05T00:45:23.3388573Z         "doc": {
2026-06-05T00:45:23.3389421Z           "complete": false,
2026-06-05T00:45:23.3389885Z           "evidence": []
2026-06-05T00:45:23.3390317Z         },
2026-06-05T00:45:23.3390923Z         "impl": {
2026-06-05T00:45:23.3391418Z           "complete": false,
2026-06-05T00:45:23.3391879Z           "evidence": []
2026-06-05T00:45:23.3392306Z         },
2026-06-05T00:45:23.3392739Z         "int": {
2026-06-05T00:45:23.3393212Z           "complete": false,
2026-06-05T00:45:23.3393680Z           "evidence": []
2026-06-05T00:45:23.3394100Z         },
2026-06-05T00:45:23.3394535Z         "unit": {
2026-06-05T00:45:23.3395008Z           "complete": false,
2026-06-05T00:45:23.3395473Z           "evidence": []
2026-06-05T00:45:23.3395900Z         }
2026-06-05T00:45:23.3396314Z       }
2026-06-05T00:45:23.3396735Z     },
2026-06-05T00:45:23.3397146Z     {
2026-06-05T00:45:23.3397617Z       "id": "REQ-INST-7",
2026-06-05T00:45:23.3398390Z       "title": "Subnet registry + bare-id resolution policy",
2026-06-05T00:45:23.3398886Z       "requiredStages": [
2026-06-05T00:45:23.3399406Z         "impl",
2026-06-05T00:45:23.3399977Z         "unit",
2026-06-05T00:45:23.3400404Z         "int"
2026-06-05T00:45:23.3400804Z       ],
2026-06-05T00:45:23.3401250Z       "stages": {
2026-06-05T00:45:23.3401661Z         "doc": {
2026-06-05T00:45:23.3402127Z           "complete": false,
2026-06-05T00:45:23.3402581Z           "evidence": []
2026-06-05T00:45:23.3402983Z         },
2026-06-05T00:45:23.3403420Z         "impl": {
2026-06-05T00:45:23.3403910Z           "complete": true,
2026-06-05T00:45:23.3404402Z           "evidence": [
2026-06-05T00:45:23.3404828Z             {
2026-06-05T00:45:23.3405494Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-05T00:45:23.3405949Z               "line": 361
2026-06-05T00:45:23.3406356Z             },
2026-06-05T00:45:23.3406767Z             {
2026-06-05T00:45:23.3407428Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-05T00:45:23.3407869Z               "line": 40
2026-06-05T00:45:23.3408291Z             },
2026-06-05T00:45:23.3408707Z             {
2026-06-05T00:45:23.3409650Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.3410253Z               "line": 27
2026-06-05T00:45:23.3410676Z             },
2026-06-05T00:45:23.3411083Z             {
2026-06-05T00:45:23.3411786Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.3412319Z               "line": 120
2026-06-05T00:45:23.3412739Z             },
2026-06-05T00:45:23.3413160Z             {
2026-06-05T00:45:23.3413851Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.3414299Z               "line": 197
2026-06-05T00:45:23.3414708Z             },
2026-06-05T00:45:23.3415138Z             {
2026-06-05T00:45:23.3415768Z               "path": "crates/spt-net/src/net/ndjson.rs",
2026-06-05T00:45:23.3416213Z               "line": 56
2026-06-05T00:45:23.3416630Z             },
2026-06-05T00:45:23.3417032Z             {
2026-06-05T00:45:23.3417694Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3418127Z               "line": 41
2026-06-05T00:45:23.3418555Z             },
2026-06-05T00:45:23.3418974Z             {
2026-06-05T00:45:23.3420019Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-05T00:45:23.3420473Z               "line": 27
2026-06-05T00:45:23.3420877Z             },
2026-06-05T00:45:23.3421287Z             {
2026-06-05T00:45:23.3421951Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-05T00:45:23.3422400Z               "line": 59
2026-06-05T00:45:23.3422813Z             },
2026-06-05T00:45:23.3423218Z             {
2026-06-05T00:45:23.3423898Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-05T00:45:23.3424335Z               "line": 68
2026-06-05T00:45:23.3424751Z             },
2026-06-05T00:45:23.3425153Z             {
2026-06-05T00:45:23.3425798Z               "path": "crates/spt-store/src/registry.rs",
2026-06-05T00:45:23.3426246Z               "line": 129
2026-06-05T00:45:23.3426845Z             }
2026-06-05T00:45:23.3427260Z           ]
2026-06-05T00:45:23.3427663Z         },
2026-06-05T00:45:23.3428225Z         "int": {
2026-06-05T00:45:23.3428689Z           "complete": true,
2026-06-05T00:45:23.3429140Z           "evidence": [
2026-06-05T00:45:23.3429768Z             {
2026-06-05T00:45:23.3430589Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-05T00:45:23.3431038Z               "line": 102
2026-06-05T00:45:23.3431457Z             },
2026-06-05T00:45:23.3431879Z             {
2026-06-05T00:45:23.3432534Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.3432989Z               "line": 481
2026-06-05T00:45:23.3433411Z             },
2026-06-05T00:45:23.3433819Z             {
2026-06-05T00:45:23.3434474Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.3434919Z               "line": 639
2026-06-05T00:45:23.3435337Z             }
2026-06-05T00:45:23.3435739Z           ]
2026-06-05T00:45:23.3436168Z         },
2026-06-05T00:45:23.3436596Z         "unit": {
2026-06-05T00:45:23.3437051Z           "complete": true,
2026-06-05T00:45:23.3437513Z           "evidence": [
2026-06-05T00:45:23.3437920Z             {
2026-06-05T00:45:23.3438625Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.3439059Z               "line": 368
2026-06-05T00:45:23.3439522Z             },
2026-06-05T00:45:23.3439934Z             {
2026-06-05T00:45:23.3440626Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-05T00:45:23.3441073Z               "line": 534
2026-06-05T00:45:23.3441476Z             },
2026-06-05T00:45:23.3441893Z             {
2026-06-05T00:45:23.3445815Z               "path": "crates/spt-daemon/tests/replicate.rs",
2026-06-05T00:45:23.3446387Z               "line": 83
2026-06-05T00:45:23.3446819Z             },
2026-06-05T00:45:23.3447225Z             {
2026-06-05T00:45:23.3447897Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3448380Z               "line": 537
2026-06-05T00:45:23.3448805Z             },
2026-06-05T00:45:23.3449333Z             {
2026-06-05T00:45:23.3450008Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3450451Z               "line": 548
2026-06-05T00:45:23.3450857Z             },
2026-06-05T00:45:23.3451273Z             {
2026-06-05T00:45:23.3451918Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3452364Z               "line": 557
2026-06-05T00:45:23.3452779Z             },
2026-06-05T00:45:23.3453186Z             {
2026-06-05T00:45:23.3453861Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-05T00:45:23.3454289Z               "line": 90
2026-06-05T00:45:23.3454706Z             },
2026-06-05T00:45:23.3455114Z             {
2026-06-05T00:45:23.3455784Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-05T00:45:23.3456229Z               "line": 105
2026-06-05T00:45:23.3456637Z             },
2026-06-05T00:45:23.3457073Z             {
2026-06-05T00:45:23.3457744Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-05T00:45:23.3458199Z               "line": 131
2026-06-05T00:45:23.3458605Z             }
2026-06-05T00:45:23.3459014Z           ]
2026-06-05T00:45:23.3459464Z         }
2026-06-05T00:45:23.3459881Z       }
2026-06-05T00:45:23.3460765Z     },
2026-06-05T00:45:23.3461219Z     {
2026-06-05T00:45:23.3461910Z       "id": "REQ-INST-8",
2026-06-05T00:45:23.3462836Z       "title": "Remote-control mode distinct from local operation",
2026-06-05T00:45:23.3463359Z       "requiredStages": [
2026-06-05T00:45:23.3463964Z         "impl",
2026-06-05T00:45:23.3464542Z         "unit",
2026-06-05T00:45:23.3464968Z         "int"
2026-06-05T00:45:23.3465371Z       ],
2026-06-05T00:45:23.3465797Z       "stages": {
2026-06-05T00:45:23.3466203Z         "doc": {
2026-06-05T00:45:23.3466686Z           "complete": false,
2026-06-05T00:45:23.3467135Z           "evidence": []
2026-06-05T00:45:23.3467766Z         },
2026-06-05T00:45:23.3468195Z         "impl": {
2026-06-05T00:45:23.3468654Z           "complete": true,
2026-06-05T00:45:23.3469315Z           "evidence": [
2026-06-05T00:45:23.3469732Z             {
2026-06-05T00:45:23.3470384Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-05T00:45:23.3470833Z               "line": 98
2026-06-05T00:45:23.3471244Z             },
2026-06-05T00:45:23.3471655Z             {
2026-06-05T00:45:23.3472281Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-05T00:45:23.3472729Z               "line": 202
2026-06-05T00:45:23.3473144Z             },
2026-06-05T00:45:23.3473559Z             {
2026-06-05T00:45:23.3474196Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-05T00:45:23.3474640Z               "line": 220
2026-06-05T00:45:23.3475060Z             },
2026-06-05T00:45:23.3475463Z             {
2026-06-05T00:45:23.3476107Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-05T00:45:23.3476560Z               "line": 35
2026-06-05T00:45:23.3476988Z             }
2026-06-05T00:45:23.3477409Z           ]
2026-06-05T00:45:23.3477826Z         },
2026-06-05T00:45:23.3478247Z         "int": {
2026-06-05T00:45:23.3478699Z           "complete": true,
2026-06-05T00:45:23.3479147Z           "evidence": [
2026-06-05T00:45:23.3479599Z             {
2026-06-05T00:45:23.3480285Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-05T00:45:23.3480732Z               "line": 375
2026-06-05T00:45:23.3481144Z             },
2026-06-05T00:45:23.3481557Z             {
2026-06-05T00:45:23.3482208Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.3482668Z               "line": 688
2026-06-05T00:45:23.3483068Z             }
2026-06-05T00:45:23.3483480Z           ]
2026-06-05T00:45:23.3483893Z         },
2026-06-05T00:45:23.3484307Z         "unit": {
2026-06-05T00:45:23.3484772Z           "complete": true,
2026-06-05T00:45:23.3485207Z           "evidence": [
2026-06-05T00:45:23.3485637Z             {
2026-06-05T00:45:23.3486282Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-05T00:45:23.3486750Z               "line": 172
2026-06-05T00:45:23.3487168Z             },
2026-06-05T00:45:23.3487569Z             {
2026-06-05T00:45:23.3488219Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-05T00:45:23.3488657Z               "line": 226
2026-06-05T00:45:23.3489071Z             },
2026-06-05T00:45:23.3489520Z             {
2026-06-05T00:45:23.3490172Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-05T00:45:23.3490613Z               "line": 70
2026-06-05T00:45:23.3491025Z             },
2026-06-05T00:45:23.3491435Z             {
2026-06-05T00:45:23.3492062Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-05T00:45:23.3492508Z               "line": 101
2026-06-05T00:45:23.3492915Z             }
2026-06-05T00:45:23.3493332Z           ]
2026-06-05T00:45:23.3493741Z         }
2026-06-05T00:45:23.3494136Z       }
2026-06-05T00:45:23.3494557Z     },
2026-06-05T00:45:23.3494959Z     {
2026-06-05T00:45:23.3495417Z       "id": "REQ-INST-9",
2026-06-05T00:45:23.3496481Z       "title": "Multi-subnet membership (same-user N subnets; cross-user seam)",
2026-06-05T00:45:23.3496959Z       "requiredStages": [
2026-06-05T00:45:23.3497384Z         "impl",
2026-06-05T00:45:23.3497790Z         "unit"
2026-06-05T00:45:23.3498197Z       ],
2026-06-05T00:45:23.3498617Z       "stages": {
2026-06-05T00:45:23.3499037Z         "doc": {
2026-06-05T00:45:23.3499532Z           "complete": false,
2026-06-05T00:45:23.3499997Z           "evidence": []
2026-06-05T00:45:23.3500410Z         },
2026-06-05T00:45:23.3500837Z         "impl": {
2026-06-05T00:45:23.3501303Z           "complete": true,
2026-06-05T00:45:23.3501738Z           "evidence": [
2026-06-05T00:45:23.3502159Z             {
2026-06-05T00:45:23.3502805Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3503259Z               "line": 253
2026-06-05T00:45:23.3503865Z             }
2026-06-05T00:45:23.3504268Z           ]
2026-06-05T00:45:23.3504677Z         },
2026-06-05T00:45:23.3505087Z         "int": {
2026-06-05T00:45:23.3505731Z           "complete": false,
2026-06-05T00:45:23.3506186Z           "evidence": []
2026-06-05T00:45:23.3506600Z         },
2026-06-05T00:45:23.3507030Z         "unit": {
2026-06-05T00:45:23.3507487Z           "complete": true,
2026-06-05T00:45:23.3507928Z           "evidence": [
2026-06-05T00:45:23.3508336Z             {
2026-06-05T00:45:23.3508990Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3509664Z               "line": 776
2026-06-05T00:45:23.3510254Z             },
2026-06-05T00:45:23.3510673Z             {
2026-06-05T00:45:23.3511325Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3511772Z               "line": 785
2026-06-05T00:45:23.3512175Z             },
2026-06-05T00:45:23.3512595Z             {
2026-06-05T00:45:23.3513241Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3513712Z               "line": 799
2026-06-05T00:45:23.3514127Z             },
2026-06-05T00:45:23.3514549Z             {
2026-06-05T00:45:23.3515205Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3515648Z               "line": 809
2026-06-05T00:45:23.3516062Z             },
2026-06-05T00:45:23.3516465Z             {
2026-06-05T00:45:23.3517124Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-05T00:45:23.3517569Z               "line": 828
2026-06-05T00:45:23.3517974Z             }
2026-06-05T00:45:23.3518418Z           ]
2026-06-05T00:45:23.3518819Z         }
2026-06-05T00:45:23.3519274Z       }
2026-06-05T00:45:23.3519688Z     },
2026-06-05T00:45:23.3520102Z     {
2026-06-05T00:45:23.3520573Z       "id": "REQ-INSTALL-1",
2026-06-05T00:45:23.3521672Z       "title": "Two install paths; signed one-line script; OS-service registration",
2026-06-05T00:45:23.3522163Z       "requiredStages": [],
2026-06-05T00:45:23.3522600Z       "stages": {
2026-06-05T00:45:23.3523025Z         "doc": {
2026-06-05T00:45:23.3523484Z           "complete": false,
2026-06-05T00:45:23.3523956Z           "evidence": []
2026-06-05T00:45:23.3527797Z         },
2026-06-05T00:45:23.3528338Z         "impl": {
2026-06-05T00:45:23.3528819Z           "complete": false,
2026-06-05T00:45:23.3529350Z           "evidence": []
2026-06-05T00:45:23.3529775Z         },
2026-06-05T00:45:23.3530191Z         "int": {
2026-06-05T00:45:23.3530668Z           "complete": false,
2026-06-05T00:45:23.3531123Z           "evidence": []
2026-06-05T00:45:23.3531528Z         },
2026-06-05T00:45:23.3531950Z         "unit": {
2026-06-05T00:45:23.3532408Z           "complete": false,
2026-06-05T00:45:23.3532856Z           "evidence": []
2026-06-05T00:45:23.3533261Z         }
2026-06-05T00:45:23.3533675Z       }
2026-06-05T00:45:23.3534091Z     },
2026-06-05T00:45:23.3534488Z     {
2026-06-05T00:45:23.3534963Z       "id": "REQ-INSTALL-2",
2026-06-05T00:45:23.3535711Z       "title": "Marketplace-repackaging-friendly install",
2026-06-05T00:45:23.3536231Z       "requiredStages": [],
2026-06-05T00:45:23.3536668Z       "stages": {
2026-06-05T00:45:23.3537098Z         "doc": {
2026-06-05T00:45:23.3537569Z           "complete": false,
2026-06-05T00:45:23.3538013Z           "evidence": []
2026-06-05T00:45:23.3538425Z         },
2026-06-05T00:45:23.3538847Z         "impl": {
2026-06-05T00:45:23.3539354Z           "complete": false,
2026-06-05T00:45:23.3539805Z           "evidence": []
2026-06-05T00:45:23.3540219Z         },
2026-06-05T00:45:23.3540645Z         "int": {
2026-06-05T00:45:23.3541104Z           "complete": false,
2026-06-05T00:45:23.3541552Z           "evidence": []
2026-06-05T00:45:23.3541957Z         },
2026-06-05T00:45:23.3542378Z         "unit": {
2026-06-05T00:45:23.3542833Z           "complete": false,
2026-06-05T00:45:23.3543288Z           "evidence": []
2026-06-05T00:45:23.3543707Z         }
2026-06-05T00:45:23.3544109Z       }
2026-06-05T00:45:23.3544514Z     },
2026-06-05T00:45:23.3545162Z     {
2026-06-05T00:45:23.3545642Z       "id": "REQ-INSTALL-3",
2026-06-05T00:45:23.3546415Z       "title": "Idempotent + interactive-optional first run",
2026-06-05T00:45:23.3547036Z       "requiredStages": [],
2026-06-05T00:45:23.3547474Z       "stages": {
2026-06-05T00:45:23.3547889Z         "doc": {
2026-06-05T00:45:23.3548348Z           "complete": false,
2026-06-05T00:45:23.3548787Z           "evidence": []
2026-06-05T00:45:23.3549235Z         },
2026-06-05T00:45:23.3549647Z         "impl": {
2026-06-05T00:45:23.3550112Z           "complete": false,
2026-06-05T00:45:23.3550559Z           "evidence": []
2026-06-05T00:45:23.3550966Z         },
2026-06-05T00:45:23.3551384Z         "int": {
2026-06-05T00:45:23.3551841Z           "complete": false,
2026-06-05T00:45:23.3552290Z           "evidence": []
2026-06-05T00:45:23.3552696Z         },
2026-06-05T00:45:23.3553116Z         "unit": {
2026-06-05T00:45:23.3553584Z           "complete": false,
2026-06-05T00:45:23.3554021Z           "evidence": []
2026-06-05T00:45:23.3554452Z         }
2026-06-05T00:45:23.3554849Z       }
2026-06-05T00:45:23.3555260Z     },
2026-06-05T00:45:23.3555658Z     {
2026-06-05T00:45:23.3556134Z       "id": "REQ-INSTALL-4",
2026-06-05T00:45:23.3560380Z       "title": "Adapter registration lifecycle: spt adapter add (--github, manifest-first, install-is-first-update) + soft-deregister remove + optional manifest uninstall template; node-local registered-adapter set self-update ripples over",
2026-06-05T00:45:23.3560865Z       "requiredStages": [
2026-06-05T00:45:23.3561288Z         "impl",
2026-06-05T00:45:23.3561698Z         "unit"
2026-06-05T00:45:23.3562108Z       ],
2026-06-05T00:45:23.3562533Z       "stages": {
2026-06-05T00:45:23.3562960Z         "doc": {
2026-06-05T00:45:23.3563431Z           "complete": false,
2026-06-05T00:45:23.3563875Z           "evidence": []
2026-06-05T00:45:23.3564297Z         },
2026-06-05T00:45:23.3564715Z         "impl": {
2026-06-05T00:45:23.3565177Z           "complete": true,
2026-06-05T00:45:23.3565627Z           "evidence": [
2026-06-05T00:45:23.3566047Z             {
2026-06-05T00:45:23.3566774Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.3567222Z               "line": 149
2026-06-05T00:45:23.3567638Z             },
2026-06-05T00:45:23.3568044Z             {
2026-06-05T00:45:23.3568699Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-05T00:45:23.3569143Z               "line": 29
2026-06-05T00:45:23.3569594Z             },
2026-06-05T00:45:23.3570003Z             {
2026-06-05T00:45:23.3570656Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-05T00:45:23.3571108Z               "line": 117
2026-06-05T00:45:23.3571521Z             },
2026-06-05T00:45:23.3571938Z             {
2026-06-05T00:45:23.3572593Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-05T00:45:23.3573030Z               "line": 161
2026-06-05T00:45:23.3573444Z             },
2026-06-05T00:45:23.3573849Z             {
2026-06-05T00:45:23.3574523Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-05T00:45:23.3574959Z               "line": 191
2026-06-05T00:45:23.3575390Z             },
2026-06-05T00:45:23.3575803Z             {
2026-06-05T00:45:23.3576455Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-05T00:45:23.3576904Z               "line": 223
2026-06-05T00:45:23.3577311Z             },
2026-06-05T00:45:23.3577724Z             {
2026-06-05T00:45:23.3578256Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3578712Z               "line": 1474
2026-06-05T00:45:23.3579128Z             }
2026-06-05T00:45:23.3579566Z           ]
2026-06-05T00:45:23.3579974Z         },
2026-06-05T00:45:23.3580384Z         "int": {
2026-06-05T00:45:23.3580855Z           "complete": false,
2026-06-05T00:45:23.3581298Z           "evidence": []
2026-06-05T00:45:23.3581712Z         },
2026-06-05T00:45:23.3582136Z         "unit": {
2026-06-05T00:45:23.3582595Z           "complete": true,
2026-06-05T00:45:23.3583213Z           "evidence": [
2026-06-05T00:45:23.3583624Z             {
2026-06-05T00:45:23.3584348Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.3584929Z               "line": 311
2026-06-05T00:45:23.3585353Z             },
2026-06-05T00:45:23.3585773Z             {
2026-06-05T00:45:23.3586426Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-05T00:45:23.3586878Z               "line": 269
2026-06-05T00:45:23.3587281Z             },
2026-06-05T00:45:23.3587691Z             {
2026-06-05T00:45:23.3588343Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-05T00:45:23.3588792Z               "line": 304
2026-06-05T00:45:23.3589247Z             },
2026-06-05T00:45:23.3589662Z             {
2026-06-05T00:45:23.3590326Z               "path": "crates/spt-runtime/src/registry.rs",
2026-06-05T00:45:23.3590767Z               "line": 321
2026-06-05T00:45:23.3591188Z             },
2026-06-05T00:45:23.3591592Z             {
2026-06-05T00:45:23.3592150Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3592599Z               "line": 2561
2026-06-05T00:45:23.3593021Z             }
2026-06-05T00:45:23.3593432Z           ]
2026-06-05T00:45:23.3593836Z         }
2026-06-05T00:45:23.3594238Z       }
2026-06-05T00:45:23.3594633Z     },
2026-06-05T00:45:23.3595035Z     {
2026-06-05T00:45:23.3595509Z       "id": "REQ-MANIFEST-1",
2026-06-05T00:45:23.3596577Z       "title": "Per-adapter manifest with adapter_name and min_spt_core_version",
2026-06-05T00:45:23.3597054Z       "requiredStages": [
2026-06-05T00:45:23.3597467Z         "doc",
2026-06-05T00:45:23.3597887Z         "impl",
2026-06-05T00:45:23.3598298Z         "unit"
2026-06-05T00:45:23.3598709Z       ],
2026-06-05T00:45:23.3599138Z       "stages": {
2026-06-05T00:45:23.3599586Z         "doc": {
2026-06-05T00:45:23.3600054Z           "complete": true,
2026-06-05T00:45:23.3600488Z           "evidence": [
2026-06-05T00:45:23.3600900Z             {
2026-06-05T00:45:23.3601418Z               "path": "docs/MANIFEST.md",
2026-06-05T00:45:23.3601858Z               "line": 19
2026-06-05T00:45:23.3602270Z             }
2026-06-05T00:45:23.3602683Z           ]
2026-06-05T00:45:23.3603098Z         },
2026-06-05T00:45:23.3603512Z         "impl": {
2026-06-05T00:45:23.3603971Z           "complete": true,
2026-06-05T00:45:23.3604402Z           "evidence": [
2026-06-05T00:45:23.3604814Z             {
2026-06-05T00:45:23.3605476Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.3605903Z               "line": 18
2026-06-05T00:45:23.3606313Z             }
2026-06-05T00:45:23.3609618Z           ]
2026-06-05T00:45:23.3610138Z         },
2026-06-05T00:45:23.3610572Z         "int": {
2026-06-05T00:45:23.3611058Z           "complete": false,
2026-06-05T00:45:23.3611509Z           "evidence": []
2026-06-05T00:45:23.3611918Z         },
2026-06-05T00:45:23.3612345Z         "unit": {
2026-06-05T00:45:23.3612801Z           "complete": true,
2026-06-05T00:45:23.3613243Z           "evidence": [
2026-06-05T00:45:23.3613684Z             {
2026-06-05T00:45:23.3614353Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.3614820Z               "line": 706
2026-06-05T00:45:23.3615229Z             },
2026-06-05T00:45:23.3615639Z             {
2026-06-05T00:45:23.3616288Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.3616735Z               "line": 802
2026-06-05T00:45:23.3617137Z             },
2026-06-05T00:45:23.3617544Z             {
2026-06-05T00:45:23.3618197Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.3618632Z               "line": 814
2026-06-05T00:45:23.3619041Z             },
2026-06-05T00:45:23.3619501Z             {
2026-06-05T00:45:23.3620163Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.3620599Z               "line": 822
2026-06-05T00:45:23.3621013Z             },
2026-06-05T00:45:23.3621426Z             {
2026-06-05T00:45:23.3622069Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.3622760Z               "line": 839
2026-06-05T00:45:23.3623309Z             },
2026-06-05T00:45:23.3623722Z             {
2026-06-05T00:45:23.3624373Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.3624820Z               "line": 853
2026-06-05T00:45:23.3625236Z             },
2026-06-05T00:45:23.3625634Z             {
2026-06-05T00:45:23.3626286Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.3626724Z               "line": 868
2026-06-05T00:45:23.3627145Z             },
2026-06-05T00:45:23.3627563Z             {
2026-06-05T00:45:23.3628200Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.3628651Z               "line": 883
2026-06-05T00:45:23.3629062Z             },
2026-06-05T00:45:23.3629526Z             {
2026-06-05T00:45:23.3630176Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.3630623Z               "line": 898
2026-06-05T00:45:23.3631052Z             },
2026-06-05T00:45:23.3631450Z             {
2026-06-05T00:45:23.3632101Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.3632547Z               "line": 909
2026-06-05T00:45:23.3632958Z             }
2026-06-05T00:45:23.3633361Z           ]
2026-06-05T00:45:23.3633775Z         }
2026-06-05T00:45:23.3634190Z       }
2026-06-05T00:45:23.3634584Z     },
2026-06-05T00:45:23.3634988Z     {
2026-06-05T00:45:23.3635457Z       "id": "REQ-MIGRATE-1",
2026-06-05T00:45:23.3636403Z       "title": "Auto-detect and migrate a legacy claude_skill_owl install",
2026-06-05T00:45:23.3636878Z       "requiredStages": [],
2026-06-05T00:45:23.3637307Z       "stages": {
2026-06-05T00:45:23.3637728Z         "doc": {
2026-06-05T00:45:23.3638183Z           "complete": false,
2026-06-05T00:45:23.3638633Z           "evidence": []
2026-06-05T00:45:23.3639030Z         },
2026-06-05T00:45:23.3639483Z         "impl": {
2026-06-05T00:45:23.3639947Z           "complete": false,
2026-06-05T00:45:23.3640423Z           "evidence": []
2026-06-05T00:45:23.3640831Z         },
2026-06-05T00:45:23.3641247Z         "int": {
2026-06-05T00:45:23.3641708Z           "complete": false,
2026-06-05T00:45:23.3642150Z           "evidence": []
2026-06-05T00:45:23.3642559Z         },
2026-06-05T00:45:23.3642971Z         "unit": {
2026-06-05T00:45:23.3643436Z           "complete": false,
2026-06-05T00:45:23.3643885Z           "evidence": []
2026-06-05T00:45:23.3644284Z         }
2026-06-05T00:45:23.3644694Z       }
2026-06-05T00:45:23.3645086Z     },
2026-06-05T00:45:23.3645489Z     {
2026-06-05T00:45:23.3645935Z       "id": "REQ-MSG-1",
2026-06-05T00:45:23.3648820Z       "title": "Local message delivery: TCP-first to a registered address, spool fallback when offline; id->address via registry (stale-clean first); reply routing (__REPLY_TO__)",
2026-06-05T00:45:23.3649346Z       "requiredStages": [
2026-06-05T00:45:23.3649765Z         "impl",
2026-06-05T00:45:23.3650179Z         "unit",
2026-06-05T00:45:23.3650602Z         "int"
2026-06-05T00:45:23.3651014Z       ],
2026-06-05T00:45:23.3651437Z       "stages": {
2026-06-05T00:45:23.3651870Z         "doc": {
2026-06-05T00:45:23.3652337Z           "complete": false,
2026-06-05T00:45:23.3652778Z           "evidence": []
2026-06-05T00:45:23.3653195Z         },
2026-06-05T00:45:23.3653613Z         "impl": {
2026-06-05T00:45:23.3654070Z           "complete": true,
2026-06-05T00:45:23.3654503Z           "evidence": [
2026-06-05T00:45:23.3654913Z             {
2026-06-05T00:45:23.3655522Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.3655951Z               "line": 28
2026-06-05T00:45:23.3656364Z             },
2026-06-05T00:45:23.3656766Z             {
2026-06-05T00:45:23.3657379Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.3657812Z               "line": 94
2026-06-05T00:45:23.3658230Z             },
2026-06-05T00:45:23.3658636Z             {
2026-06-05T00:45:23.3659276Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.3659943Z               "line": 127
2026-06-05T00:45:23.3660354Z             },
2026-06-05T00:45:23.3660897Z             {
2026-06-05T00:45:23.3661498Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.3661941Z               "line": 149
2026-06-05T00:45:23.3662355Z             },
2026-06-05T00:45:23.3662752Z             {
2026-06-05T00:45:23.3663352Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.3663780Z               "line": 174
2026-06-05T00:45:23.3664192Z             },
2026-06-05T00:45:23.3664591Z             {
2026-06-05T00:45:23.3665197Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-05T00:45:23.3665639Z               "line": 18
2026-06-05T00:45:23.3666043Z             },
2026-06-05T00:45:23.3666457Z             {
2026-06-05T00:45:23.3667022Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-05T00:45:23.3667463Z               "line": 13
2026-06-05T00:45:23.3667868Z             },
2026-06-05T00:45:23.3668295Z             {
2026-06-05T00:45:23.3668867Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-05T00:45:23.3669347Z               "line": 61
2026-06-05T00:45:23.3669769Z             },
2026-06-05T00:45:23.3670173Z             {
2026-06-05T00:45:23.3670746Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-05T00:45:23.3671191Z               "line": 10
2026-06-05T00:45:23.3671593Z             }
2026-06-05T00:45:23.3672004Z           ]
2026-06-05T00:45:23.3672407Z         },
2026-06-05T00:45:23.3672825Z         "int": {
2026-06-05T00:45:23.3673282Z           "complete": true,
2026-06-05T00:45:23.3673729Z           "evidence": [
2026-06-05T00:45:23.3674134Z             {
2026-06-05T00:45:23.3674877Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-05T00:45:23.3675311Z               "line": 9
2026-06-05T00:45:23.3675715Z             },
2026-06-05T00:45:23.3676118Z             {
2026-06-05T00:45:23.3676847Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-05T00:45:23.3677306Z               "line": 66
2026-06-05T00:45:23.3677722Z             },
2026-06-05T00:45:23.3678133Z             {
2026-06-05T00:45:23.3678869Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-05T00:45:23.3679346Z               "line": 116
2026-06-05T00:45:23.3679766Z             }
2026-06-05T00:45:23.3680167Z           ]
2026-06-05T00:45:23.3680577Z         },
2026-06-05T00:45:23.3681001Z         "unit": {
2026-06-05T00:45:23.3681453Z           "complete": true,
2026-06-05T00:45:23.3681902Z           "evidence": [
2026-06-05T00:45:23.3682310Z             {
2026-06-05T00:45:23.3682919Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.3683355Z               "line": 203
2026-06-05T00:45:23.3683766Z             },
2026-06-05T00:45:23.3684183Z             {
2026-06-05T00:45:23.3684777Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.3685213Z               "line": 232
2026-06-05T00:45:23.3685636Z             },
2026-06-05T00:45:23.3686045Z             {
2026-06-05T00:45:23.3686640Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.3687097Z               "line": 277
2026-06-05T00:45:23.3687512Z             },
2026-06-05T00:45:23.3690734Z             {
2026-06-05T00:45:23.3691503Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.3691956Z               "line": 300
2026-06-05T00:45:23.3692376Z             },
2026-06-05T00:45:23.3692784Z             {
2026-06-05T00:45:23.3693401Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-05T00:45:23.3693850Z               "line": 322
2026-06-05T00:45:23.3694257Z             },
2026-06-05T00:45:23.3694671Z             {
2026-06-05T00:45:23.3695266Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-05T00:45:23.3695713Z               "line": 203
2026-06-05T00:45:23.3696119Z             },
2026-06-05T00:45:23.3696539Z             {
2026-06-05T00:45:23.3697152Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-05T00:45:23.3697864Z               "line": 233
2026-06-05T00:45:23.3698425Z             },
2026-06-05T00:45:23.3698832Z             {
2026-06-05T00:45:23.3699519Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-05T00:45:23.3699969Z               "line": 247
2026-06-05T00:45:23.3700385Z             },
2026-06-05T00:45:23.3700800Z             {
2026-06-05T00:45:23.3701406Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-05T00:45:23.3701850Z               "line": 259
2026-06-05T00:45:23.3702257Z             },
2026-06-05T00:45:23.3702665Z             {
2026-06-05T00:45:23.3703220Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-05T00:45:23.3703659Z               "line": 158
2026-06-05T00:45:23.3704070Z             },
2026-06-05T00:45:23.3704471Z             {
2026-06-05T00:45:23.3705037Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-05T00:45:23.3705475Z               "line": 235
2026-06-05T00:45:23.3705907Z             },
2026-06-05T00:45:23.3706316Z             {
2026-06-05T00:45:23.3706874Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-05T00:45:23.3707329Z               "line": 68
2026-06-05T00:45:23.3707731Z             },
2026-06-05T00:45:23.3708141Z             {
2026-06-05T00:45:23.3708696Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-05T00:45:23.3709133Z               "line": 74
2026-06-05T00:45:23.3709591Z             },
2026-06-05T00:45:23.3709993Z             {
2026-06-05T00:45:23.3710562Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-05T00:45:23.3710994Z               "line": 80
2026-06-05T00:45:23.3711403Z             },
2026-06-05T00:45:23.3711806Z             {
2026-06-05T00:45:23.3712376Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-05T00:45:23.3712814Z               "line": 99
2026-06-05T00:45:23.3713215Z             }
2026-06-05T00:45:23.3713615Z           ]
2026-06-05T00:45:23.3714013Z         }
2026-06-05T00:45:23.3714435Z       }
2026-06-05T00:45:23.3714831Z     },
2026-06-05T00:45:23.3715236Z     {
2026-06-05T00:45:23.3715675Z       "id": "REQ-MSG-2",
2026-06-05T00:45:23.3717307Z       "title": "spt binary CLI surface: send/ring/ready/poll/list/stop/whoami, stable arg shapes + exit codes",
2026-06-05T00:45:23.3717785Z       "requiredStages": [
2026-06-05T00:45:23.3718198Z         "impl",
2026-06-05T00:45:23.3718616Z         "unit"
2026-06-05T00:45:23.3719014Z       ],
2026-06-05T00:45:23.3719479Z       "stages": {
2026-06-05T00:45:23.3719900Z         "doc": {
2026-06-05T00:45:23.3720356Z           "complete": false,
2026-06-05T00:45:23.3720801Z           "evidence": []
2026-06-05T00:45:23.3721202Z         },
2026-06-05T00:45:23.3721629Z         "impl": {
2026-06-05T00:45:23.3722084Z           "complete": true,
2026-06-05T00:45:23.3722521Z           "evidence": [
2026-06-05T00:45:23.3722929Z             {
2026-06-05T00:45:23.3723469Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3723906Z               "line": 11
2026-06-05T00:45:23.3724325Z             },
2026-06-05T00:45:23.3724735Z             {
2026-06-05T00:45:23.3725281Z               "path": "crates/spt/src/main.rs",
2026-06-05T00:45:23.3725730Z               "line": 8
2026-06-05T00:45:23.3726144Z             }
2026-06-05T00:45:23.3726546Z           ]
2026-06-05T00:45:23.3726954Z         },
2026-06-05T00:45:23.3727359Z         "int": {
2026-06-05T00:45:23.3727822Z           "complete": false,
2026-06-05T00:45:23.3728260Z           "evidence": []
2026-06-05T00:45:23.3728667Z         },
2026-06-05T00:45:23.3729083Z         "unit": {
2026-06-05T00:45:23.3729574Z           "complete": true,
2026-06-05T00:45:23.3730013Z           "evidence": [
2026-06-05T00:45:23.3730413Z             {
2026-06-05T00:45:23.3730957Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3731392Z               "line": 2399
2026-06-05T00:45:23.3731808Z             },
2026-06-05T00:45:23.3732220Z             {
2026-06-05T00:45:23.3732751Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3733398Z               "line": 3226
2026-06-05T00:45:23.3733811Z             },
2026-06-05T00:45:23.3734357Z             {
2026-06-05T00:45:23.3734899Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3735342Z               "line": 3235
2026-06-05T00:45:23.3735755Z             },
2026-06-05T00:45:23.3736151Z             {
2026-06-05T00:45:23.3736697Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3737136Z               "line": 3247
2026-06-05T00:45:23.3737547Z             }
2026-06-05T00:45:23.3737942Z           ]
2026-06-05T00:45:23.3738352Z         }
2026-06-05T00:45:23.3738756Z       }
2026-06-05T00:45:23.3739147Z     },
2026-06-05T00:45:23.3739594Z     {
2026-06-05T00:45:23.3740031Z       "id": "REQ-MSG-3",
2026-06-05T00:45:23.3742512Z       "title": "Ready-agent lifecycle: register perch (info.json + listener + registry address) on ready, drain spooled backlog on startup, clean teardown",
2026-06-05T00:45:23.3743017Z       "requiredStages": [
2026-06-05T00:45:23.3743461Z         "impl",
2026-06-05T00:45:23.3743884Z         "unit",
2026-06-05T00:45:23.3744290Z         "int"
2026-06-05T00:45:23.3744708Z       ],
2026-06-05T00:45:23.3745124Z       "stages": {
2026-06-05T00:45:23.3745545Z         "doc": {
2026-06-05T00:45:23.3746005Z           "complete": false,
2026-06-05T00:45:23.3746454Z           "evidence": []
2026-06-05T00:45:23.3746866Z         },
2026-06-05T00:45:23.3747283Z         "impl": {
2026-06-05T00:45:23.3747744Z           "complete": true,
2026-06-05T00:45:23.3748176Z           "evidence": [
2026-06-05T00:45:23.3748583Z             {
2026-06-05T00:45:23.3749243Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-05T00:45:23.3749692Z               "line": 19
2026-06-05T00:45:23.3750103Z             },
2026-06-05T00:45:23.3750503Z             {
2026-06-05T00:45:23.3751088Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-05T00:45:23.3751515Z               "line": 21
2026-06-05T00:45:23.3751930Z             },
2026-06-05T00:45:23.3752345Z             {
2026-06-05T00:45:23.3752970Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-05T00:45:23.3753653Z               "line": 48
2026-06-05T00:45:23.3754422Z             },
2026-06-05T00:45:23.3754916Z             {
2026-06-05T00:45:23.3755615Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-05T00:45:23.3756252Z               "line": 131
2026-06-05T00:45:23.3756670Z             }
2026-06-05T00:45:23.3757079Z           ]
2026-06-05T00:45:23.3757489Z         },
2026-06-05T00:45:23.3757896Z         "int": {
2026-06-05T00:45:23.3758361Z           "complete": true,
2026-06-05T00:45:23.3758796Z           "evidence": [
2026-06-05T00:45:23.3759277Z             {
2026-06-05T00:45:23.3760035Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-05T00:45:23.3760474Z               "line": 10
2026-06-05T00:45:23.3760889Z             },
2026-06-05T00:45:23.3761297Z             {
2026-06-05T00:45:23.3762039Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-05T00:45:23.3762498Z               "line": 66
2026-06-05T00:45:23.3763206Z             }
2026-06-05T00:45:23.3763836Z           ]
2026-06-05T00:45:23.3764295Z         },
2026-06-05T00:45:23.3764884Z         "unit": {
2026-06-05T00:45:23.3765344Z           "complete": true,
2026-06-05T00:45:23.3765792Z           "evidence": [
2026-06-05T00:45:23.3766197Z             {
2026-06-05T00:45:23.3766797Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-05T00:45:23.3767237Z               "line": 185
2026-06-05T00:45:23.3767649Z             },
2026-06-05T00:45:23.3768061Z             {
2026-06-05T00:45:23.3768636Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-05T00:45:23.3769086Z               "line": 204
2026-06-05T00:45:23.3769539Z             },
2026-06-05T00:45:23.3773527Z             {
2026-06-05T00:45:23.3774268Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-05T00:45:23.3774905Z               "line": 223
2026-06-05T00:45:23.3775823Z             }
2026-06-05T00:45:23.3776438Z           ]
2026-06-05T00:45:23.3776859Z         }
2026-06-05T00:45:23.3777439Z       }
2026-06-05T00:45:23.3777860Z     },
2026-06-05T00:45:23.3778252Z     {
2026-06-05T00:45:23.3778716Z       "id": "REQ-NET-1",
2026-06-05T00:45:23.3779844Z       "title": "WAN messaging first-class, behind default-on net feature flag",
2026-06-05T00:45:23.3780320Z       "requiredStages": [
2026-06-05T00:45:23.3780746Z         "impl",
2026-06-05T00:45:23.3781161Z         "unit",
2026-06-05T00:45:23.3781583Z         "int"
2026-06-05T00:45:23.3781982Z       ],
2026-06-05T00:45:23.3782418Z       "stages": {
2026-06-05T00:45:23.3782843Z         "doc": {
2026-06-05T00:45:23.3783305Z           "complete": false,
2026-06-05T00:45:23.3783757Z           "evidence": []
2026-06-05T00:45:23.3784157Z         },
2026-06-05T00:45:23.3784588Z         "impl": {
2026-06-05T00:45:23.3785041Z           "complete": true,
2026-06-05T00:45:23.3785493Z           "evidence": [
2026-06-05T00:45:23.3785939Z             {
2026-06-05T00:45:23.3786587Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-05T00:45:23.3787041Z               "line": 52
2026-06-05T00:45:23.3787450Z             },
2026-06-05T00:45:23.3787868Z             {
2026-06-05T00:45:23.3788519Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-05T00:45:23.3788968Z               "line": 448
2026-06-05T00:45:23.3789414Z             },
2026-06-05T00:45:23.3789971Z             {
2026-06-05T00:45:23.3790905Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-05T00:45:23.3791421Z               "line": 69
2026-06-05T00:45:23.3791938Z             },
2026-06-05T00:45:23.3792462Z             {
2026-06-05T00:45:23.3793303Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3793836Z               "line": 65
2026-06-05T00:45:23.3794317Z             },
2026-06-05T00:45:23.3794789Z             {
2026-06-05T00:45:23.3795530Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3796068Z               "line": 127
2026-06-05T00:45:23.3796531Z             },
2026-06-05T00:45:23.3796998Z             {
2026-06-05T00:45:23.3797775Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3798352Z               "line": 143
2026-06-05T00:45:23.3798838Z             },
2026-06-05T00:45:23.3799496Z             {
2026-06-05T00:45:23.3800173Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3800626Z               "line": 158
2026-06-05T00:45:23.3801041Z             },
2026-06-05T00:45:23.3801779Z             {
2026-06-05T00:45:23.3802443Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3802889Z               "line": 220
2026-06-05T00:45:23.3803411Z             },
2026-06-05T00:45:23.3803827Z             {
2026-06-05T00:45:23.3804485Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3804927Z               "line": 255
2026-06-05T00:45:23.3805348Z             },
2026-06-05T00:45:23.3805777Z             {
2026-06-05T00:45:23.3806426Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3806874Z               "line": 261
2026-06-05T00:45:23.3807286Z             },
2026-06-05T00:45:23.3807701Z             {
2026-06-05T00:45:23.3808348Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3808797Z               "line": 267
2026-06-05T00:45:23.3809245Z             },
2026-06-05T00:45:23.3809670Z             {
2026-06-05T00:45:23.3810314Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3810762Z               "line": 283
2026-06-05T00:45:23.3811176Z             },
2026-06-05T00:45:23.3811586Z             {
2026-06-05T00:45:23.3812238Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3812671Z               "line": 303
2026-06-05T00:45:23.3813085Z             },
2026-06-05T00:45:23.3813486Z             {
2026-06-05T00:45:23.3814121Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-05T00:45:23.3814932Z               "line": 35
2026-06-05T00:45:23.3815343Z             },
2026-06-05T00:45:23.3815900Z             {
2026-06-05T00:45:23.3816542Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-05T00:45:23.3816986Z               "line": 82
2026-06-05T00:45:23.3817404Z             },
2026-06-05T00:45:23.3817826Z             {
2026-06-05T00:45:23.3818428Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.3818868Z               "line": 129
2026-06-05T00:45:23.3819328Z             },
2026-06-05T00:45:23.3819741Z             {
2026-06-05T00:45:23.3820280Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.3820720Z               "line": 1050
2026-06-05T00:45:23.3821137Z             },
2026-06-05T00:45:23.3821548Z             {
2026-06-05T00:45:23.3822111Z               "path": "crates/spt/src/wansend.rs",
2026-06-05T00:45:23.3822554Z               "line": 17
2026-06-05T00:45:23.3822956Z             }
2026-06-05T00:45:23.3823384Z           ]
2026-06-05T00:45:23.3823789Z         },
2026-06-05T00:45:23.3824218Z         "int": {
2026-06-05T00:45:23.3824699Z           "complete": true,
2026-06-05T00:45:23.3825142Z           "evidence": [
2026-06-05T00:45:23.3825555Z             {
2026-06-05T00:45:23.3826225Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-05T00:45:23.3826684Z               "line": 314
2026-06-05T00:45:23.3827102Z             },
2026-06-05T00:45:23.3827503Z             {
2026-06-05T00:45:23.3828174Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.3828622Z               "line": 488
2026-06-05T00:45:23.3829040Z             },
2026-06-05T00:45:23.3829477Z             {
2026-06-05T00:45:23.3830143Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.3830588Z               "line": 645
2026-06-05T00:45:23.3830989Z             }
2026-06-05T00:45:23.3831402Z           ]
2026-06-05T00:45:23.3831806Z         },
2026-06-05T00:45:23.3832243Z         "unit": {
2026-06-05T00:45:23.3832708Z           "complete": true,
2026-06-05T00:45:23.3833160Z           "evidence": [
2026-06-05T00:45:23.3833583Z             {
2026-06-05T00:45:23.3834231Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-05T00:45:23.3834673Z               "line": 500
2026-06-05T00:45:23.3835078Z             },
2026-06-05T00:45:23.3835487Z             {
2026-06-05T00:45:23.3836136Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-05T00:45:23.3836586Z               "line": 529
2026-06-05T00:45:23.3837001Z             },
2026-06-05T00:45:23.3837405Z             {
2026-06-05T00:45:23.3838084Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-05T00:45:23.3838524Z               "line": 517
2026-06-05T00:45:23.3838937Z             },
2026-06-05T00:45:23.3839378Z             {
2026-06-05T00:45:23.3840037Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-05T00:45:23.3840481Z               "line": 142
2026-06-05T00:45:23.3840901Z             },
2026-06-05T00:45:23.3841314Z             {
2026-06-05T00:45:23.3841963Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3842423Z               "line": 357
2026-06-05T00:45:23.3842824Z             },
2026-06-05T00:45:23.3843232Z             {
2026-06-05T00:45:23.3843881Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3844323Z               "line": 371
2026-06-05T00:45:23.3844738Z             },
2026-06-05T00:45:23.3845144Z             {
2026-06-05T00:45:23.3845799Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3846238Z               "line": 390
2026-06-05T00:45:23.3846655Z             },
2026-06-05T00:45:23.3847069Z             {
2026-06-05T00:45:23.3847690Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-05T00:45:23.3848133Z               "line": 106
2026-06-05T00:45:23.3848541Z             },
2026-06-05T00:45:23.3848950Z             {
2026-06-05T00:45:23.3849799Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-05T00:45:23.3850256Z               "line": 148
2026-06-05T00:45:23.3850808Z             },
2026-06-05T00:45:23.3851222Z             {
2026-06-05T00:45:23.3851839Z               "path": "crates/spt-store/src/spool.rs",
2026-06-05T00:45:23.3852273Z               "line": 445
2026-06-05T00:45:23.3852736Z             },
2026-06-05T00:45:23.3853143Z             {
2026-06-05T00:45:23.3853718Z               "path": "crates/spt/src/wansend.rs",
2026-06-05T00:45:23.3854166Z               "line": 218
2026-06-05T00:45:23.3854575Z             },
2026-06-05T00:45:23.3859481Z             {
2026-06-05T00:45:23.3860198Z               "path": "crates/spt/src/wansend.rs",
2026-06-05T00:45:23.3860671Z               "line": 306
2026-06-05T00:45:23.3861089Z             }
2026-06-05T00:45:23.3861495Z           ]
2026-06-05T00:45:23.3861910Z         }
2026-06-05T00:45:23.3862312Z       }
2026-06-05T00:45:23.3862726Z     },
2026-06-05T00:45:23.3863123Z     {
2026-06-05T00:45:23.3863613Z       "id": "REQ-NET-2",
2026-06-05T00:45:23.3864627Z       "title": "n0 relay default + self-host knob + plain-language disclosure",
2026-06-05T00:45:23.3865126Z       "requiredStages": [
2026-06-05T00:45:23.3865553Z         "impl"
2026-06-05T00:45:23.3865958Z       ],
2026-06-05T00:45:23.3866392Z       "stages": {
2026-06-05T00:45:23.3866806Z         "doc": {
2026-06-05T00:45:23.3867275Z           "complete": false,
2026-06-05T00:45:23.3867720Z           "evidence": []
2026-06-05T00:45:23.3868139Z         },
2026-06-05T00:45:23.3868567Z         "impl": {
2026-06-05T00:45:23.3869028Z           "complete": true,
2026-06-05T00:45:23.3869514Z           "evidence": [
2026-06-05T00:45:23.3869928Z             {
2026-06-05T00:45:23.3870570Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-05T00:45:23.3871023Z               "line": 49
2026-06-05T00:45:23.3871430Z             },
2026-06-05T00:45:23.3871847Z             {
2026-06-05T00:45:23.3872494Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3872947Z               "line": 39
2026-06-05T00:45:23.3873351Z             },
2026-06-05T00:45:23.3873774Z             {
2026-06-05T00:45:23.3874436Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3874866Z               "line": 49
2026-06-05T00:45:23.3875288Z             },
2026-06-05T00:45:23.3875698Z             {
2026-06-05T00:45:23.3876347Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3876786Z               "line": 127
2026-06-05T00:45:23.3877199Z             },
2026-06-05T00:45:23.3877611Z             {
2026-06-05T00:45:23.3878264Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3878716Z               "line": 143
2026-06-05T00:45:23.3879129Z             },
2026-06-05T00:45:23.3879591Z             {
2026-06-05T00:45:23.3880232Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-05T00:45:23.3880685Z               "line": 158
2026-06-05T00:45:23.3881117Z             }
2026-06-05T00:45:23.3881522Z           ]
2026-06-05T00:45:23.3881933Z         },
2026-06-05T00:45:23.3882363Z         "int": {
2026-06-05T00:45:23.3882840Z           "complete": false,
2026-06-05T00:45:23.3883287Z           "evidence": []
2026-06-05T00:45:23.3883704Z         },
2026-06-05T00:45:23.3884135Z         "unit": {
2026-06-05T00:45:23.3884590Z           "complete": true,
2026-06-05T00:45:23.3885038Z           "evidence": [
2026-06-05T00:45:23.3885444Z             {
2026-06-05T00:45:23.3886083Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-05T00:45:23.3886518Z               "line": 334
2026-06-05T00:45:23.3886935Z             }
2026-06-05T00:45:23.3887350Z           ]
2026-06-05T00:45:23.3887750Z         }
2026-06-05T00:45:23.3888156Z       }
2026-06-05T00:45:23.3888549Z     },
2026-06-05T00:45:23.3888957Z     {
2026-06-05T00:45:23.3889444Z       "id": "REQ-NET-3",
2026-06-05T00:45:23.3890393Z       "title": "Cross-node Psyche sync over P2P replaces gh-repo-sync",
2026-06-05T00:45:23.3891194Z       "requiredStages": [
2026-06-05T00:45:23.3891611Z         "impl",
2026-06-05T00:45:23.3892166Z         "unit"
2026-06-05T00:45:23.3892567Z       ],
2026-06-05T00:45:23.3892997Z       "stages": {
2026-06-05T00:45:23.3893411Z         "doc": {
2026-06-05T00:45:23.3893882Z           "complete": false,
2026-06-05T00:45:23.3894347Z           "evidence": []
2026-06-05T00:45:23.3894756Z         },
2026-06-05T00:45:23.3895181Z         "impl": {
2026-06-05T00:45:23.3895635Z           "complete": true,
2026-06-05T00:45:23.3896084Z           "evidence": [
2026-06-05T00:45:23.3896487Z             {
2026-06-05T00:45:23.3897104Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.3897542Z               "line": 39
2026-06-05T00:45:23.3897950Z             },
2026-06-05T00:45:23.3898362Z             {
2026-06-05T00:45:23.3898961Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.3899467Z               "line": 159
2026-06-05T00:45:23.3899905Z             },
2026-06-05T00:45:23.3900323Z             {
2026-06-05T00:45:23.3900929Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-05T00:45:23.3901380Z               "line": 290
2026-06-05T00:45:23.3901794Z             },
2026-06-05T00:45:23.3902202Z             {
2026-06-05T00:45:23.3902812Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-05T00:45:23.3903244Z               "line": 36
2026-06-05T00:45:23.3903658Z             },
2026-06-05T00:45:23.3904069Z             {
2026-06-05T00:45:23.3904734Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.3905182Z               "line": 135
2026-06-05T00:45:23.3905593Z             },
2026-06-05T00:45:23.3906009Z             {
2026-06-05T00:45:23.3906674Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.3907127Z               "line": 172
2026-06-05T00:45:23.3907544Z             },
2026-06-05T00:45:23.3907947Z             {
2026-06-05T00:45:23.3908620Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.3909071Z               "line": 184
2026-06-05T00:45:23.3909539Z             },
2026-06-05T00:45:23.3909945Z             {
2026-06-05T00:45:23.3910627Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.3911071Z               "line": 222
2026-06-05T00:45:23.3911476Z             },
2026-06-05T00:45:23.3911886Z             {
2026-06-05T00:45:23.3912546Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.3912988Z               "line": 237
2026-06-05T00:45:23.3913390Z             },
2026-06-05T00:45:23.3913810Z             {
2026-06-05T00:45:23.3914484Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.3914922Z               "line": 273
2026-06-05T00:45:23.3915338Z             },
2026-06-05T00:45:23.3915742Z             {
2026-06-05T00:45:23.3916414Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.3916855Z               "line": 314
2026-06-05T00:45:23.3917278Z             },
2026-06-05T00:45:23.3917686Z             {
2026-06-05T00:45:23.3918349Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.3918804Z               "line": 327
2026-06-05T00:45:23.3919290Z             },
2026-06-05T00:45:23.3919714Z             {
2026-06-05T00:45:23.3920409Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-05T00:45:23.3920912Z               "line": 29
2026-06-05T00:45:23.3921368Z             },
2026-06-05T00:45:23.3921776Z             {
2026-06-05T00:45:23.3922436Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-05T00:45:23.3922870Z               "line": 70
2026-06-05T00:45:23.3923286Z             },
2026-06-05T00:45:23.3923879Z             {
2026-06-05T00:45:23.3924852Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-05T00:45:23.3925369Z               "line": 121
2026-06-05T00:45:23.3925937Z             }
2026-06-05T00:45:23.3926355Z           ]
2026-06-05T00:45:23.3926973Z         },
2026-06-05T00:45:23.3927401Z         "int": {
2026-06-05T00:45:23.3927876Z           "complete": false,
2026-06-05T00:45:23.3928500Z           "evidence": []
2026-06-05T00:45:23.3928921Z         },
2026-06-05T00:45:23.3929402Z         "unit": {
2026-06-05T00:45:23.3929881Z           "complete": true,
2026-06-05T00:45:23.3930324Z           "evidence": [
2026-06-05T00:45:23.3930742Z             {
2026-06-05T00:45:23.3931387Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-05T00:45:23.3931829Z               "line": 203
2026-06-05T00:45:23.3932255Z             },
2026-06-05T00:45:23.3932669Z             {
2026-06-05T00:45:23.3933305Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-05T00:45:23.3933753Z               "line": 303
2026-06-05T00:45:23.3934176Z             },
2026-06-05T00:45:23.3934588Z             {
2026-06-05T00:45:23.3935209Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-05T00:45:23.3935655Z               "line": 399
2026-06-05T00:45:23.3936078Z             },
2026-06-05T00:45:23.3936498Z             {
2026-06-05T00:45:23.3937110Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-05T00:45:23.3937569Z               "line": 93
2026-06-05T00:45:23.3941277Z             },
2026-06-05T00:45:23.3941802Z             {
2026-06-05T00:45:23.3942457Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-05T00:45:23.3942906Z               "line": 131
2026-06-05T00:45:23.3943331Z             },
2026-06-05T00:45:23.3943733Z             {
2026-06-05T00:45:23.3944393Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-05T00:45:23.3944844Z               "line": 308
2026-06-05T00:45:23.3945251Z             },
2026-06-05T00:45:23.3945663Z             {
2026-06-05T00:45:23.3946300Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-05T00:45:23.3946750Z               "line": 345
2026-06-05T00:45:23.3947159Z             },
2026-06-05T00:45:23.3947581Z             {
2026-06-05T00:45:23.3948273Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-05T00:45:23.3948718Z               "line": 469
2026-06-05T00:45:23.3949151Z             }
2026-06-05T00:45:23.3949623Z           ]
2026-06-05T00:45:23.3950033Z         }
2026-06-05T00:45:23.3950438Z       }
2026-06-05T00:45:23.3950846Z     },
2026-06-05T00:45:23.3951250Z     {
2026-06-05T00:45:23.3951735Z       "id": "REQ-NODE-IDENTITY",
2026-06-05T00:45:23.3953101Z       "title": "Ed25519 identity primitive: keypair, detached sign/verify, stable pubkey<->hex",
2026-06-05T00:45:23.3953577Z       "requiredStages": [
2026-06-05T00:45:23.3954003Z         "impl",
2026-06-05T00:45:23.3954415Z         "unit"
2026-06-05T00:45:23.3954828Z       ],
2026-06-05T00:45:23.3955255Z       "stages": {
2026-06-05T00:45:23.3955663Z         "doc": {
2026-06-05T00:45:23.3956134Z           "complete": false,
2026-06-05T00:45:23.3956575Z           "evidence": []
2026-06-05T00:45:23.3956988Z         },
2026-06-05T00:45:23.3957398Z         "impl": {
2026-06-05T00:45:23.3957882Z           "complete": true,
2026-06-05T00:45:23.3958327Z           "evidence": [
2026-06-05T00:45:23.3958735Z             {
2026-06-05T00:45:23.3959444Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-05T00:45:23.3959884Z               "line": 60
2026-06-05T00:45:23.3960304Z             },
2026-06-05T00:45:23.3960713Z             {
2026-06-05T00:45:23.3961361Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-05T00:45:23.3961805Z               "line": 68
2026-06-05T00:45:23.3962209Z             },
2026-06-05T00:45:23.3962618Z             {
2026-06-05T00:45:23.3963251Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-05T00:45:23.3963694Z               "line": 86
2026-06-05T00:45:23.3964112Z             },
2026-06-05T00:45:23.3964510Z             {
2026-06-05T00:45:23.3965156Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-05T00:45:23.3965600Z               "line": 120
2026-06-05T00:45:23.3966016Z             },
2026-06-05T00:45:23.3966665Z             {
2026-06-05T00:45:23.3967311Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-05T00:45:23.3967908Z               "line": 127
2026-06-05T00:45:23.3968327Z             },
2026-06-05T00:45:23.3968753Z             {
2026-06-05T00:45:23.3969437Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-05T00:45:23.3969893Z               "line": 143
2026-06-05T00:45:23.3970301Z             },
2026-06-05T00:45:23.3970717Z             {
2026-06-05T00:45:23.3971383Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-05T00:45:23.3971883Z               "line": 16
2026-06-05T00:45:23.3972309Z             }
2026-06-05T00:45:23.3972707Z           ]
2026-06-05T00:45:23.3973119Z         },
2026-06-05T00:45:23.3973523Z         "int": {
2026-06-05T00:45:23.3973992Z           "complete": false,
2026-06-05T00:45:23.3974452Z           "evidence": []
2026-06-05T00:45:23.3974849Z         },
2026-06-05T00:45:23.3975271Z         "unit": {
2026-06-05T00:45:23.3975741Z           "complete": true,
2026-06-05T00:45:23.3976187Z           "evidence": [
2026-06-05T00:45:23.3976589Z             {
2026-06-05T00:45:23.3977249Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-05T00:45:23.3977698Z               "line": 199
2026-06-05T00:45:23.3978108Z             },
2026-06-05T00:45:23.3978522Z             {
2026-06-05T00:45:23.3979194Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-05T00:45:23.3979656Z               "line": 218
2026-06-05T00:45:23.3980070Z             },
2026-06-05T00:45:23.3980486Z             {
2026-06-05T00:45:23.3981126Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-05T00:45:23.3981560Z               "line": 232
2026-06-05T00:45:23.3981981Z             },
2026-06-05T00:45:23.3982385Z             {
2026-06-05T00:45:23.3983031Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-05T00:45:23.3983466Z               "line": 248
2026-06-05T00:45:23.3983884Z             },
2026-06-05T00:45:23.3984315Z             {
2026-06-05T00:45:23.3984929Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-05T00:45:23.3985375Z               "line": 125
2026-06-05T00:45:23.3985797Z             },
2026-06-05T00:45:23.3986211Z             {
2026-06-05T00:45:23.3986810Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-05T00:45:23.3987260Z               "line": 141
2026-06-05T00:45:23.3987674Z             },
2026-06-05T00:45:23.3988080Z             {
2026-06-05T00:45:23.3988688Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-05T00:45:23.3989122Z               "line": 153
2026-06-05T00:45:23.3989578Z             }
2026-06-05T00:45:23.3989987Z           ]
2026-06-05T00:45:23.3990404Z         }
2026-06-05T00:45:23.3990818Z       }
2026-06-05T00:45:23.3991214Z     },
2026-06-05T00:45:23.3991614Z     {
2026-06-05T00:45:23.3992069Z       "id": "REQ-NOTIF-1",
2026-06-05T00:45:23.3994373Z       "title": "Notification primitive: per-subnet replicated spool, seen/dismissed, resurface-at-boundary, subsumes update+consent prompts",
2026-06-05T00:45:23.3994860Z       "requiredStages": [
2026-06-05T00:45:23.3995283Z         "impl",
2026-06-05T00:45:23.3995717Z         "unit",
2026-06-05T00:45:23.3996126Z         "int"
2026-06-05T00:45:23.3996532Z       ],
2026-06-05T00:45:23.3996951Z       "stages": {
2026-06-05T00:45:23.3997372Z         "doc": {
2026-06-05T00:45:23.3997832Z           "complete": false,
2026-06-05T00:45:23.3998291Z           "evidence": []
2026-06-05T00:45:23.3998703Z         },
2026-06-05T00:45:23.3999116Z         "impl": {
2026-06-05T00:45:23.3999613Z           "complete": true,
2026-06-05T00:45:23.4000048Z           "evidence": [
2026-06-05T00:45:23.4000464Z             {
2026-06-05T00:45:23.4001107Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-05T00:45:23.4001559Z               "line": 412
2026-06-05T00:45:23.4001980Z             },
2026-06-05T00:45:23.4002390Z             {
2026-06-05T00:45:23.4002996Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4003609Z               "line": 30
2026-06-05T00:45:23.4004023Z             },
2026-06-05T00:45:23.4004567Z             {
2026-06-05T00:45:23.4005188Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4005634Z               "line": 62
2026-06-05T00:45:23.4006042Z             },
2026-06-05T00:45:23.4006452Z             {
2026-06-05T00:45:23.4007052Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4007494Z               "line": 83
2026-06-05T00:45:23.4007908Z             },
2026-06-05T00:45:23.4008310Z             {
2026-06-05T00:45:23.4008918Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4009396Z               "line": 97
2026-06-05T00:45:23.4009822Z             },
2026-06-05T00:45:23.4010233Z             {
2026-06-05T00:45:23.4010852Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4011300Z               "line": 126
2026-06-05T00:45:23.4011708Z             },
2026-06-05T00:45:23.4012137Z             {
2026-06-05T00:45:23.4012748Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4013211Z               "line": 159
2026-06-05T00:45:23.4013618Z             },
2026-06-05T00:45:23.4014036Z             {
2026-06-05T00:45:23.4014647Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4015086Z               "line": 179
2026-06-05T00:45:23.4015505Z             },
2026-06-05T00:45:23.4015914Z             {
2026-06-05T00:45:23.4016529Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4016965Z               "line": 239
2026-06-05T00:45:23.4017375Z             },
2026-06-05T00:45:23.4017781Z             {
2026-06-05T00:45:23.4018386Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4018826Z               "line": 287
2026-06-05T00:45:23.4019278Z             },
2026-06-05T00:45:23.4019697Z             {
2026-06-05T00:45:23.4023226Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-05T00:45:23.4023814Z               "line": 24
2026-06-05T00:45:23.4024243Z             },
2026-06-05T00:45:23.4024657Z             {
2026-06-05T00:45:23.4025354Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-05T00:45:23.4025790Z               "line": 34
2026-06-05T00:45:23.4026205Z             },
2026-06-05T00:45:23.4026608Z             {
2026-06-05T00:45:23.4027259Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-05T00:45:23.4027696Z               "line": 55
2026-06-05T00:45:23.4028103Z             },
2026-06-05T00:45:23.4028516Z             {
2026-06-05T00:45:23.4029242Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-05T00:45:23.4029690Z               "line": 76
2026-06-05T00:45:23.4030095Z             },
2026-06-05T00:45:23.4030513Z             {
2026-06-05T00:45:23.4031189Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-05T00:45:23.4031624Z               "line": 88
2026-06-05T00:45:23.4032040Z             },
2026-06-05T00:45:23.4032456Z             {
2026-06-05T00:45:23.4033106Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-05T00:45:23.4033562Z               "line": 41
2026-06-05T00:45:23.4033969Z             },
2026-06-05T00:45:23.4034382Z             {
2026-06-05T00:45:23.4035026Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.4035459Z               "line": 94
2026-06-05T00:45:23.4035867Z             },
2026-06-05T00:45:23.4036280Z             {
2026-06-05T00:45:23.4036904Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-05T00:45:23.4037335Z               "line": 20
2026-06-05T00:45:23.4037750Z             },
2026-06-05T00:45:23.4038152Z             {
2026-06-05T00:45:23.4038768Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-05T00:45:23.4039234Z               "line": 30
2026-06-05T00:45:23.4039652Z             },
2026-06-05T00:45:23.4040062Z             {
2026-06-05T00:45:23.4040673Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-05T00:45:23.4041379Z               "line": 50
2026-06-05T00:45:23.4041786Z             },
2026-06-05T00:45:23.4042344Z             {
2026-06-05T00:45:23.4042946Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4043385Z               "line": 28
2026-06-05T00:45:23.4043800Z             },
2026-06-05T00:45:23.4044203Z             {
2026-06-05T00:45:23.4044803Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4045237Z               "line": 126
2026-06-05T00:45:23.4045654Z             },
2026-06-05T00:45:23.4046054Z             {
2026-06-05T00:45:23.4046657Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4047102Z               "line": 161
2026-06-05T00:45:23.4047514Z             },
2026-06-05T00:45:23.4047924Z             {
2026-06-05T00:45:23.4048517Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4048961Z               "line": 197
2026-06-05T00:45:23.4049409Z             },
2026-06-05T00:45:23.4049845Z             {
2026-06-05T00:45:23.4050450Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4050904Z               "line": 208
2026-06-05T00:45:23.4051321Z             },
2026-06-05T00:45:23.4051726Z             {
2026-06-05T00:45:23.4052332Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4052770Z               "line": 231
2026-06-05T00:45:23.4053184Z             },
2026-06-05T00:45:23.4053600Z             {
2026-06-05T00:45:23.4054198Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4054641Z               "line": 251
2026-06-05T00:45:23.4055049Z             },
2026-06-05T00:45:23.4055457Z             {
2026-06-05T00:45:23.4056079Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.4056526Z               "line": 63
2026-06-05T00:45:23.4056939Z             }
2026-06-05T00:45:23.4057341Z           ]
2026-06-05T00:45:23.4057756Z         },
2026-06-05T00:45:23.4058170Z         "int": {
2026-06-05T00:45:23.4058657Z           "complete": true,
2026-06-05T00:45:23.4059090Z           "evidence": [
2026-06-05T00:45:23.4059555Z             {
2026-06-05T00:45:23.4060240Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-05T00:45:23.4060681Z               "line": 265
2026-06-05T00:45:23.4061100Z             },
2026-06-05T00:45:23.4061497Z             {
2026-06-05T00:45:23.4062183Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-05T00:45:23.4062619Z               "line": 102
2026-06-05T00:45:23.4063036Z             },
2026-06-05T00:45:23.4063446Z             {
2026-06-05T00:45:23.4064086Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.4064529Z               "line": 497
2026-06-05T00:45:23.4064939Z             },
2026-06-05T00:45:23.4065356Z             {
2026-06-05T00:45:23.4065998Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.4066443Z               "line": 745
2026-06-05T00:45:23.4066854Z             }
2026-06-05T00:45:23.4067272Z           ]
2026-06-05T00:45:23.4067683Z         },
2026-06-05T00:45:23.4068094Z         "unit": {
2026-06-05T00:45:23.4068564Z           "complete": true,
2026-06-05T00:45:23.4069011Z           "evidence": [
2026-06-05T00:45:23.4069455Z             {
2026-06-05T00:45:23.4070070Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4070508Z               "line": 362
2026-06-05T00:45:23.4070928Z             },
2026-06-05T00:45:23.4071335Z             {
2026-06-05T00:45:23.4073662Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4074132Z               "line": 400
2026-06-05T00:45:23.4074537Z             },
2026-06-05T00:45:23.4074948Z             {
2026-06-05T00:45:23.4075548Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4075996Z               "line": 427
2026-06-05T00:45:23.4076401Z             },
2026-06-05T00:45:23.4076812Z             {
2026-06-05T00:45:23.4077423Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4078090Z               "line": 448
2026-06-05T00:45:23.4078510Z             },
2026-06-05T00:45:23.4079098Z             {
2026-06-05T00:45:23.4079810Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4080270Z               "line": 501
2026-06-05T00:45:23.4080699Z             },
2026-06-05T00:45:23.4081113Z             {
2026-06-05T00:45:23.4081721Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4082164Z               "line": 540
2026-06-05T00:45:23.4082563Z             },
2026-06-05T00:45:23.4082971Z             {
2026-06-05T00:45:23.4083575Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4084022Z               "line": 632
2026-06-05T00:45:23.4084439Z             },
2026-06-05T00:45:23.4084849Z             {
2026-06-05T00:45:23.4085502Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-05T00:45:23.4085943Z               "line": 133
2026-06-05T00:45:23.4086381Z             },
2026-06-05T00:45:23.4086785Z             {
2026-06-05T00:45:23.4087446Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-05T00:45:23.4087906Z               "line": 208
2026-06-05T00:45:23.4088311Z             },
2026-06-05T00:45:23.4088720Z             {
2026-06-05T00:45:23.4089409Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-05T00:45:23.4089872Z               "line": 227
2026-06-05T00:45:23.4090307Z             },
2026-06-05T00:45:23.4090717Z             {
2026-06-05T00:45:23.4091362Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.4091799Z               "line": 328
2026-06-05T00:45:23.4092213Z             },
2026-06-05T00:45:23.4092618Z             {
2026-06-05T00:45:23.4093277Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-05T00:45:23.4093728Z               "line": 357
2026-06-05T00:45:23.4094129Z             },
2026-06-05T00:45:23.4094544Z             {
2026-06-05T00:45:23.4095220Z               "path": "crates/spt-daemon/tests/notifsync.rs",
2026-06-05T00:45:23.4095689Z               "line": 112
2026-06-05T00:45:23.4096111Z             },
2026-06-05T00:45:23.4096523Z             {
2026-06-05T00:45:23.4097146Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-05T00:45:23.4097573Z               "line": 72
2026-06-05T00:45:23.4097985Z             },
2026-06-05T00:45:23.4098388Z             {
2026-06-05T00:45:23.4099018Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-05T00:45:23.4099491Z               "line": 94
2026-06-05T00:45:23.4099909Z             },
2026-06-05T00:45:23.4104347Z             {
2026-06-05T00:45:23.4105219Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4105683Z               "line": 365
2026-06-05T00:45:23.4106100Z             },
2026-06-05T00:45:23.4106512Z             {
2026-06-05T00:45:23.4107105Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4107552Z               "line": 396
2026-06-05T00:45:23.4108014Z             },
2026-06-05T00:45:23.4108417Z             {
2026-06-05T00:45:23.4109008Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4109553Z               "line": 410
2026-06-05T00:45:23.4109975Z             },
2026-06-05T00:45:23.4110374Z             {
2026-06-05T00:45:23.4110978Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4111420Z               "line": 441
2026-06-05T00:45:23.4111829Z             },
2026-06-05T00:45:23.4112243Z             {
2026-06-05T00:45:23.4112833Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4113282Z               "line": 458
2026-06-05T00:45:23.4113691Z             },
2026-06-05T00:45:23.4114103Z             {
2026-06-05T00:45:23.4114704Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4115141Z               "line": 483
2026-06-05T00:45:23.4115556Z             },
2026-06-05T00:45:23.4115953Z             {
2026-06-05T00:45:23.4116560Z               "path": "crates/spt-store/src/notif.rs",
2026-06-05T00:45:23.4117302Z               "line": 507
2026-06-05T00:45:23.4117713Z             },
2026-06-05T00:45:23.4118285Z             {
2026-06-05T00:45:23.4118915Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.4119395Z               "line": 373
2026-06-05T00:45:23.4119806Z             }
2026-06-05T00:45:23.4120220Z           ]
2026-06-05T00:45:23.4120626Z         }
2026-06-05T00:45:23.4121020Z       }
2026-06-05T00:45:23.4121423Z     },
2026-06-05T00:45:23.4121812Z     {
2026-06-05T00:45:23.4122271Z       "id": "REQ-NOTIF-2",
2026-06-05T00:45:23.4123861Z       "title": "spt notify (agent-issued subnet notif) + notif_command manifest seam (harness + shell adapters)",
2026-06-05T00:45:23.4124332Z       "requiredStages": [
2026-06-05T00:45:23.4124756Z         "doc",
2026-06-05T00:45:23.4125167Z         "impl",
2026-06-05T00:45:23.4125587Z         "unit"
2026-06-05T00:45:23.4125988Z       ],
2026-06-05T00:45:23.4126412Z       "stages": {
2026-06-05T00:45:23.4126834Z         "doc": {
2026-06-05T00:45:23.4127294Z           "complete": true,
2026-06-05T00:45:23.4127732Z           "evidence": [
2026-06-05T00:45:23.4128147Z             {
2026-06-05T00:45:23.4128651Z               "path": "docs/MANIFEST.md",
2026-06-05T00:45:23.4129083Z               "line": 62
2026-06-05T00:45:23.4129536Z             }
2026-06-05T00:45:23.4129943Z           ]
2026-06-05T00:45:23.4130357Z         },
2026-06-05T00:45:23.4130778Z         "impl": {
2026-06-05T00:45:23.4131243Z           "complete": true,
2026-06-05T00:45:23.4131687Z           "evidence": [
2026-06-05T00:45:23.4132090Z             {
2026-06-05T00:45:23.4132709Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4133150Z               "line": 208
2026-06-05T00:45:23.4133571Z             },
2026-06-05T00:45:23.4133986Z             {
2026-06-05T00:45:23.4134592Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4135046Z               "line": 222
2026-06-05T00:45:23.4135468Z             },
2026-06-05T00:45:23.4135880Z             {
2026-06-05T00:45:23.4136528Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.4136994Z               "line": 125
2026-06-05T00:45:23.4137410Z             },
2026-06-05T00:45:23.4137812Z             {
2026-06-05T00:45:23.4138441Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.4138872Z               "line": 72
2026-06-05T00:45:23.4139317Z             },
2026-06-05T00:45:23.4139735Z             {
2026-06-05T00:45:23.4140278Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4140718Z               "line": 833
2026-06-05T00:45:23.4141123Z             },
2026-06-05T00:45:23.4141535Z             {
2026-06-05T00:45:23.4142068Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4142510Z               "line": 865
2026-06-05T00:45:23.4142918Z             },
2026-06-05T00:45:23.4143328Z             {
2026-06-05T00:45:23.4144044Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4144660Z               "line": 931
2026-06-05T00:45:23.4145076Z             },
2026-06-05T00:45:23.4145490Z             {
2026-06-05T00:45:23.4146027Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4146460Z               "line": 967
2026-06-05T00:45:23.4146876Z             }
2026-06-05T00:45:23.4147283Z           ]
2026-06-05T00:45:23.4147688Z         },
2026-06-05T00:45:23.4148108Z         "int": {
2026-06-05T00:45:23.4148562Z           "complete": false,
2026-06-05T00:45:23.4149010Z           "evidence": []
2026-06-05T00:45:23.4149443Z         },
2026-06-05T00:45:23.4149872Z         "unit": {
2026-06-05T00:45:23.4150333Z           "complete": true,
2026-06-05T00:45:23.4150772Z           "evidence": [
2026-06-05T00:45:23.4151182Z             {
2026-06-05T00:45:23.4151791Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.4152233Z               "line": 590
2026-06-05T00:45:23.4152638Z             },
2026-06-05T00:45:23.4153238Z             {
2026-06-05T00:45:23.4153783Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4154214Z               "line": 2455
2026-06-05T00:45:23.4154758Z             },
2026-06-05T00:45:23.4155159Z             {
2026-06-05T00:45:23.4155703Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4156138Z               "line": 2477
2026-06-05T00:45:23.4156549Z             }
2026-06-05T00:45:23.4156964Z           ]
2026-06-05T00:45:23.4157364Z         }
2026-06-05T00:45:23.4157770Z       }
2026-06-05T00:45:23.4158164Z     },
2026-06-05T00:45:23.4158569Z     {
2026-06-05T00:45:23.4159015Z       "id": "REQ-PAIR-1",
2026-06-05T00:45:23.4159612Z       "title": "TOTP-seeded SPAKE2 pairing",
2026-06-05T00:45:23.4160094Z       "requiredStages": [
2026-06-05T00:45:23.4160508Z         "impl",
2026-06-05T00:45:23.4160920Z         "unit",
2026-06-05T00:45:23.4161322Z         "int"
2026-06-05T00:45:23.4161731Z       ],
2026-06-05T00:45:23.4162148Z       "stages": {
2026-06-05T00:45:23.4162580Z         "doc": {
2026-06-05T00:45:23.4163042Z           "complete": false,
2026-06-05T00:45:23.4163489Z           "evidence": []
2026-06-05T00:45:23.4163914Z         },
2026-06-05T00:45:23.4164331Z         "impl": {
2026-06-05T00:45:23.4164790Z           "complete": true,
2026-06-05T00:45:23.4165222Z           "evidence": [
2026-06-05T00:45:23.4165634Z             {
2026-06-05T00:45:23.4166336Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.4166771Z               "line": 27
2026-06-05T00:45:23.4167187Z             },
2026-06-05T00:45:23.4167591Z             {
2026-06-05T00:45:23.4168298Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.4168728Z               "line": 88
2026-06-05T00:45:23.4169142Z             },
2026-06-05T00:45:23.4169595Z             {
2026-06-05T00:45:23.4170291Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.4170741Z               "line": 110
2026-06-05T00:45:23.4171166Z             },
2026-06-05T00:45:23.4171584Z             {
2026-06-05T00:45:23.4172283Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.4172747Z               "line": 153
2026-06-05T00:45:23.4173159Z             },
2026-06-05T00:45:23.4173565Z             {
2026-06-05T00:45:23.4174272Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.4174710Z               "line": 182
2026-06-05T00:45:23.4175122Z             },
2026-06-05T00:45:23.4175523Z             {
2026-06-05T00:45:23.4176219Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-05T00:45:23.4176658Z               "line": 29
2026-06-05T00:45:23.4177062Z             },
2026-06-05T00:45:23.4177472Z             {
2026-06-05T00:45:23.4178241Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-05T00:45:23.4178678Z               "line": 31
2026-06-05T00:45:23.4179080Z             },
2026-06-05T00:45:23.4179530Z             {
2026-06-05T00:45:23.4180240Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4180676Z               "line": 40
2026-06-05T00:45:23.4181106Z             },
2026-06-05T00:45:23.4184713Z             {
2026-06-05T00:45:23.4185528Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4185986Z               "line": 131
2026-06-05T00:45:23.4186400Z             },
2026-06-05T00:45:23.4186806Z             {
2026-06-05T00:45:23.4187491Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4187947Z               "line": 306
2026-06-05T00:45:23.4188350Z             }
2026-06-05T00:45:23.4188765Z           ]
2026-06-05T00:45:23.4189270Z         },
2026-06-05T00:45:23.4189690Z         "int": {
2026-06-05T00:45:23.4190153Z           "complete": true,
2026-06-05T00:45:23.4190588Z           "evidence": [
2026-06-05T00:45:23.4191001Z             {
2026-06-05T00:45:23.4191658Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.4192531Z               "line": 433
2026-06-05T00:45:23.4192949Z             },
2026-06-05T00:45:23.4193359Z             {
2026-06-05T00:45:23.4194171Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.4194620Z               "line": 549
2026-06-05T00:45:23.4195034Z             }
2026-06-05T00:45:23.4195433Z           ]
2026-06-05T00:45:23.4195848Z         },
2026-06-05T00:45:23.4196273Z         "unit": {
2026-06-05T00:45:23.4196720Z           "complete": true,
2026-06-05T00:45:23.4197154Z           "evidence": [
2026-06-05T00:45:23.4197553Z             {
2026-06-05T00:45:23.4198265Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.4198702Z               "line": 236
2026-06-05T00:45:23.4199117Z             },
2026-06-05T00:45:23.4199583Z             {
2026-06-05T00:45:23.4200293Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-05T00:45:23.4200736Z               "line": 349
2026-06-05T00:45:23.4201142Z             },
2026-06-05T00:45:23.4201579Z             {
2026-06-05T00:45:23.4202279Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-05T00:45:23.4202747Z               "line": 194
2026-06-05T00:45:23.4203165Z             },
2026-06-05T00:45:23.4203566Z             {
2026-06-05T00:45:23.4204268Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-05T00:45:23.4204710Z               "line": 216
2026-06-05T00:45:23.4205124Z             },
2026-06-05T00:45:23.4205530Z             {
2026-06-05T00:45:23.4206219Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-05T00:45:23.4206664Z               "line": 230
2026-06-05T00:45:23.4207070Z             },
2026-06-05T00:45:23.4207483Z             {
2026-06-05T00:45:23.4208164Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-05T00:45:23.4208615Z               "line": 242
2026-06-05T00:45:23.4209021Z             },
2026-06-05T00:45:23.4209480Z             {
2026-06-05T00:45:23.4210177Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-05T00:45:23.4210630Z               "line": 256
2026-06-05T00:45:23.4211057Z             },
2026-06-05T00:45:23.4211462Z             {
2026-06-05T00:45:23.4212160Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-05T00:45:23.4212609Z               "line": 270
2026-06-05T00:45:23.4213017Z             },
2026-06-05T00:45:23.4213435Z             {
2026-06-05T00:45:23.4214124Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-05T00:45:23.4214595Z               "line": 277
2026-06-05T00:45:23.4215002Z             },
2026-06-05T00:45:23.4215410Z             {
2026-06-05T00:45:23.4216107Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-05T00:45:23.4216550Z               "line": 295
2026-06-05T00:45:23.4216969Z             },
2026-06-05T00:45:23.4217377Z             {
2026-06-05T00:45:23.4218069Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4218524Z               "line": 696
2026-06-05T00:45:23.4218940Z             },
2026-06-05T00:45:23.4219388Z             {
2026-06-05T00:45:23.4220087Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4220545Z               "line": 757
2026-06-05T00:45:23.4220961Z             },
2026-06-05T00:45:23.4221375Z             {
2026-06-05T00:45:23.4222046Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4222489Z               "line": 814
2026-06-05T00:45:23.4222904Z             },
2026-06-05T00:45:23.4223309Z             {
2026-06-05T00:45:23.4224008Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4224444Z               "line": 868
2026-06-05T00:45:23.4224859Z             },
2026-06-05T00:45:23.4225257Z             {
2026-06-05T00:45:23.4225944Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4226390Z               "line": 920
2026-06-05T00:45:23.4226795Z             },
2026-06-05T00:45:23.4227429Z             {
2026-06-05T00:45:23.4228113Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4228698Z               "line": 1084
2026-06-05T00:45:23.4229111Z             }
2026-06-05T00:45:23.4229574Z           ]
2026-06-05T00:45:23.4229987Z         }
2026-06-05T00:45:23.4230422Z       }
2026-06-05T00:45:23.4231174Z     },
2026-06-05T00:45:23.4231765Z     {
2026-06-05T00:45:23.4232337Z       "id": "REQ-PAIR-2",
2026-06-05T00:45:23.4233312Z       "title": "Local trust store with TOFU + warn-on-change",
2026-06-05T00:45:23.4233814Z       "requiredStages": [
2026-06-05T00:45:23.4234245Z         "impl",
2026-06-05T00:45:23.4234660Z         "unit"
2026-06-05T00:45:23.4235068Z       ],
2026-06-05T00:45:23.4235487Z       "stages": {
2026-06-05T00:45:23.4235907Z         "doc": {
2026-06-05T00:45:23.4236372Z           "complete": false,
2026-06-05T00:45:23.4236816Z           "evidence": []
2026-06-05T00:45:23.4237222Z         },
2026-06-05T00:45:23.4237633Z         "impl": {
2026-06-05T00:45:23.4238127Z           "complete": true,
2026-06-05T00:45:23.4238561Z           "evidence": [
2026-06-05T00:45:23.4238987Z             {
2026-06-05T00:45:23.4239658Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4240113Z               "line": 42
2026-06-05T00:45:23.4240688Z             },
2026-06-05T00:45:23.4241246Z             {
2026-06-05T00:45:23.4241852Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4242290Z               "line": 151
2026-06-05T00:45:23.4242705Z             },
2026-06-05T00:45:23.4243107Z             {
2026-06-05T00:45:23.4243716Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4244153Z               "line": 171
2026-06-05T00:45:23.4244563Z             },
2026-06-05T00:45:23.4244971Z             {
2026-06-05T00:45:23.4245566Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4246009Z               "line": 209
2026-06-05T00:45:23.4246415Z             },
2026-06-05T00:45:23.4246850Z             {
2026-06-05T00:45:23.4247449Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4247896Z               "line": 232
2026-06-05T00:45:23.4248310Z             }
2026-06-05T00:45:23.4248712Z           ]
2026-06-05T00:45:23.4249130Z         },
2026-06-05T00:45:23.4249579Z         "int": {
2026-06-05T00:45:23.4250056Z           "complete": false,
2026-06-05T00:45:23.4250502Z           "evidence": []
2026-06-05T00:45:23.4250910Z         },
2026-06-05T00:45:23.4251331Z         "unit": {
2026-06-05T00:45:23.4251785Z           "complete": true,
2026-06-05T00:45:23.4252228Z           "evidence": [
2026-06-05T00:45:23.4252628Z             {
2026-06-05T00:45:23.4253232Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4253680Z               "line": 253
2026-06-05T00:45:23.4254094Z             },
2026-06-05T00:45:23.4254508Z             {
2026-06-05T00:45:23.4255112Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4255576Z               "line": 272
2026-06-05T00:45:23.4255996Z             },
2026-06-05T00:45:23.4256398Z             {
2026-06-05T00:45:23.4257015Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4257453Z               "line": 284
2026-06-05T00:45:23.4257867Z             },
2026-06-05T00:45:23.4258270Z             {
2026-06-05T00:45:23.4258873Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4259536Z               "line": 303
2026-06-05T00:45:23.4260167Z             },
2026-06-05T00:45:23.4260611Z             {
2026-06-05T00:45:23.4261218Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4261669Z               "line": 319
2026-06-05T00:45:23.4262075Z             },
2026-06-05T00:45:23.4262491Z             {
2026-06-05T00:45:23.4263089Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4263533Z               "line": 331
2026-06-05T00:45:23.4263954Z             },
2026-06-05T00:45:23.4267748Z             {
2026-06-05T00:45:23.4268825Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4269392Z               "line": 343
2026-06-05T00:45:23.4269994Z             },
2026-06-05T00:45:23.4270415Z             {
2026-06-05T00:45:23.4271021Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4271472Z               "line": 356
2026-06-05T00:45:23.4271881Z             },
2026-06-05T00:45:23.4272294Z             {
2026-06-05T00:45:23.4272890Z               "path": "crates/spt-store/src/trust.rs",
2026-06-05T00:45:23.4273337Z               "line": 370
2026-06-05T00:45:23.4273768Z             }
2026-06-05T00:45:23.4274177Z           ]
2026-06-05T00:45:23.4274592Z         }
2026-06-05T00:45:23.4274997Z       }
2026-06-05T00:45:23.4275415Z     },
2026-06-05T00:45:23.4275826Z     {
2026-06-05T00:45:23.4276291Z       "id": "REQ-PAIR-3",
2026-06-05T00:45:23.4277102Z       "title": "Fetch current pairing code from any paired node",
2026-06-05T00:45:23.4277566Z       "requiredStages": [
2026-06-05T00:45:23.4278008Z         "impl",
2026-06-05T00:45:23.4278423Z         "unit"
2026-06-05T00:45:23.4278835Z       ],
2026-06-05T00:45:23.4279310Z       "stages": {
2026-06-05T00:45:23.4279735Z         "doc": {
2026-06-05T00:45:23.4280198Z           "complete": false,
2026-06-05T00:45:23.4280640Z           "evidence": []
2026-06-05T00:45:23.4281054Z         },
2026-06-05T00:45:23.4281470Z         "impl": {
2026-06-05T00:45:23.4281927Z           "complete": true,
2026-06-05T00:45:23.4282363Z           "evidence": [
2026-06-05T00:45:23.4282773Z             {
2026-06-05T00:45:23.4283319Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4283760Z               "line": 1243
2026-06-05T00:45:23.4284172Z             },
2026-06-05T00:45:23.4284577Z             {
2026-06-05T00:45:23.4285115Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4285553Z               "line": 1279
2026-06-05T00:45:23.4285968Z             },
2026-06-05T00:45:23.4286383Z             {
2026-06-05T00:45:23.4286933Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4287383Z               "line": 1339
2026-06-05T00:45:23.4287803Z             }
2026-06-05T00:45:23.4288213Z           ]
2026-06-05T00:45:23.4288617Z         },
2026-06-05T00:45:23.4289036Z         "int": {
2026-06-05T00:45:23.4289545Z           "complete": false,
2026-06-05T00:45:23.4289995Z           "evidence": []
2026-06-05T00:45:23.4290406Z         },
2026-06-05T00:45:23.4290819Z         "unit": {
2026-06-05T00:45:23.4291281Z           "complete": true,
2026-06-05T00:45:23.4291714Z           "evidence": [
2026-06-05T00:45:23.4292125Z             {
2026-06-05T00:45:23.4292672Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4293110Z               "line": 3336
2026-06-05T00:45:23.4293524Z             },
2026-06-05T00:45:23.4293928Z             {
2026-06-05T00:45:23.4294469Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4294913Z               "line": 3353
2026-06-05T00:45:23.4295340Z             },
2026-06-05T00:45:23.4295752Z             {
2026-06-05T00:45:23.4296283Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4296747Z               "line": 3367
2026-06-05T00:45:23.4297155Z             },
2026-06-05T00:45:23.4297570Z             {
2026-06-05T00:45:23.4298101Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4298552Z               "line": 3383
2026-06-05T00:45:23.4298965Z             },
2026-06-05T00:45:23.4299406Z             {
2026-06-05T00:45:23.4299946Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4300387Z               "line": 3404
2026-06-05T00:45:23.4300803Z             },
2026-06-05T00:45:23.4301208Z             {
2026-06-05T00:45:23.4301757Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4302205Z               "line": 3420
2026-06-05T00:45:23.4302613Z             },
2026-06-05T00:45:23.4303027Z             {
2026-06-05T00:45:23.4303560Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4304193Z               "line": 3433
2026-06-05T00:45:23.4304605Z             },
2026-06-05T00:45:23.4305028Z             {
2026-06-05T00:45:23.4305703Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4306150Z               "line": 3442
2026-06-05T00:45:23.4306568Z             }
2026-06-05T00:45:23.4306968Z           ]
2026-06-05T00:45:23.4307385Z         }
2026-06-05T00:45:23.4307788Z       }
2026-06-05T00:45:23.4308193Z     },
2026-06-05T00:45:23.4308597Z     {
2026-06-05T00:45:23.4309055Z       "id": "REQ-PAIR-4",
2026-06-05T00:45:23.4309701Z       "title": "Subnet naming on first pairing",
2026-06-05T00:45:23.4310168Z       "requiredStages": [
2026-06-05T00:45:23.4310593Z         "impl",
2026-06-05T00:45:23.4311004Z         "unit"
2026-06-05T00:45:23.4311416Z       ],
2026-06-05T00:45:23.4311843Z       "stages": {
2026-06-05T00:45:23.4312254Z         "doc": {
2026-06-05T00:45:23.4312721Z           "complete": false,
2026-06-05T00:45:23.4313170Z           "evidence": []
2026-06-05T00:45:23.4313607Z         },
2026-06-05T00:45:23.4314024Z         "impl": {
2026-06-05T00:45:23.4314482Z           "complete": true,
2026-06-05T00:45:23.4314944Z           "evidence": [
2026-06-05T00:45:23.4315353Z             {
2026-06-05T00:45:23.4315966Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-05T00:45:23.4316400Z               "line": 154
2026-06-05T00:45:23.4316813Z             }
2026-06-05T00:45:23.4317219Z           ]
2026-06-05T00:45:23.4317629Z         },
2026-06-05T00:45:23.4318042Z         "int": {
2026-06-05T00:45:23.4318493Z           "complete": false,
2026-06-05T00:45:23.4318937Z           "evidence": []
2026-06-05T00:45:23.4319601Z         },
2026-06-05T00:45:23.4320037Z         "unit": {
2026-06-05T00:45:23.4320488Z           "complete": true,
2026-06-05T00:45:23.4320942Z           "evidence": [
2026-06-05T00:45:23.4321357Z             {
2026-06-05T00:45:23.4322045Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4322492Z               "line": 972
2026-06-05T00:45:23.4322912Z             }
2026-06-05T00:45:23.4323327Z           ]
2026-06-05T00:45:23.4323743Z         }
2026-06-05T00:45:23.4324155Z       }
2026-06-05T00:45:23.4324556Z     },
2026-06-05T00:45:23.4324949Z     {
2026-06-05T00:45:23.4325403Z       "id": "REQ-PAIR-5",
2026-06-05T00:45:23.4327267Z       "title": "Multi-subnet pairing: subnet-name discovery input, create-new-names-up-front, rendezvous-token hashing",
2026-06-05T00:45:23.4327743Z       "requiredStages": [
2026-06-05T00:45:23.4328163Z         "impl",
2026-06-05T00:45:23.4328587Z         "unit",
2026-06-05T00:45:23.4329024Z         "int"
2026-06-05T00:45:23.4329468Z       ],
2026-06-05T00:45:23.4329902Z       "stages": {
2026-06-05T00:45:23.4330311Z         "doc": {
2026-06-05T00:45:23.4330776Z           "complete": false,
2026-06-05T00:45:23.4331216Z           "evidence": []
2026-06-05T00:45:23.4331628Z         },
2026-06-05T00:45:23.4332045Z         "impl": {
2026-06-05T00:45:23.4332495Z           "complete": true,
2026-06-05T00:45:23.4332955Z           "evidence": [
2026-06-05T00:45:23.4333371Z             {
2026-06-05T00:45:23.4334164Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-05T00:45:23.4334610Z               "line": 33
2026-06-05T00:45:23.4335030Z             },
2026-06-05T00:45:23.4335445Z             {
2026-06-05T00:45:23.4336218Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-05T00:45:23.4336660Z               "line": 45
2026-06-05T00:45:23.4337071Z             },
2026-06-05T00:45:23.4337479Z             {
2026-06-05T00:45:23.4338255Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-05T00:45:23.4338698Z               "line": 59
2026-06-05T00:45:23.4339113Z             },
2026-06-05T00:45:23.4339555Z             {
2026-06-05T00:45:23.4340251Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4340695Z               "line": 306
2026-06-05T00:45:23.4341108Z             }
2026-06-05T00:45:23.4341692Z           ]
2026-06-05T00:45:23.4342101Z         },
2026-06-05T00:45:23.4342517Z         "int": {
2026-06-05T00:45:23.4343106Z           "complete": true,
2026-06-05T00:45:23.4343562Z           "evidence": [
2026-06-05T00:45:23.4343997Z             {
2026-06-05T00:45:23.4348264Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.4348978Z               "line": 549
2026-06-05T00:45:23.4349563Z             }
2026-06-05T00:45:23.4350172Z           ]
2026-06-05T00:45:23.4350608Z         },
2026-06-05T00:45:23.4351079Z         "unit": {
2026-06-05T00:45:23.4351738Z           "complete": true,
2026-06-05T00:45:23.4352272Z           "evidence": [
2026-06-05T00:45:23.4352768Z             {
2026-06-05T00:45:23.4353750Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-05T00:45:23.4354282Z               "line": 72
2026-06-05T00:45:23.4354755Z             },
2026-06-05T00:45:23.4355223Z             {
2026-06-05T00:45:23.4356104Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-05T00:45:23.4356685Z               "line": 82
2026-06-05T00:45:23.4357170Z             },
2026-06-05T00:45:23.4357631Z             {
2026-06-05T00:45:23.4358513Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-05T00:45:23.4359021Z               "line": 92
2026-06-05T00:45:23.4359577Z             },
2026-06-05T00:45:23.4360148Z             {
2026-06-05T00:45:23.4360954Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-05T00:45:23.4361395Z               "line": 102
2026-06-05T00:45:23.4361817Z             },
2026-06-05T00:45:23.4362241Z             {
2026-06-05T00:45:23.4363018Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-05T00:45:23.4363694Z               "line": 117
2026-06-05T00:45:23.4364137Z             },
2026-06-05T00:45:23.4364572Z             {
2026-06-05T00:45:23.4365287Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4365788Z               "line": 750
2026-06-05T00:45:23.4366227Z             },
2026-06-05T00:45:23.4366651Z             {
2026-06-05T00:45:23.4367385Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4367846Z               "line": 806
2026-06-05T00:45:23.4368295Z             },
2026-06-05T00:45:23.4368727Z             {
2026-06-05T00:45:23.4369493Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-05T00:45:23.4369970Z               "line": 1026
2026-06-05T00:45:23.4370391Z             }
2026-06-05T00:45:23.4370824Z           ]
2026-06-05T00:45:23.4371244Z         }
2026-06-05T00:45:23.4371674Z       }
2026-06-05T00:45:23.4372089Z     },
2026-06-05T00:45:23.4372533Z     {
2026-06-05T00:45:23.4373055Z       "id": "REQ-PAIR-6",
2026-06-05T00:45:23.4374793Z       "title": "Elevation-gated per-subnet code fetch (UAC/root or elevated agent; else authenticator app)",
2026-06-05T00:45:23.4375285Z       "requiredStages": [
2026-06-05T00:45:23.4375703Z         "impl",
2026-06-05T00:45:23.4376146Z         "unit"
2026-06-05T00:45:23.4376550Z       ],
2026-06-05T00:45:23.4376987Z       "stages": {
2026-06-05T00:45:23.4377423Z         "doc": {
2026-06-05T00:45:23.4377885Z           "complete": false,
2026-06-05T00:45:23.4378337Z           "evidence": []
2026-06-05T00:45:23.4378744Z         },
2026-06-05T00:45:23.4379211Z         "impl": {
2026-06-05T00:45:23.4379967Z           "complete": true,
2026-06-05T00:45:23.4380425Z           "evidence": [
2026-06-05T00:45:23.4380843Z             {
2026-06-05T00:45:23.4381383Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4381843Z               "line": 1279
2026-06-05T00:45:23.4382256Z             },
2026-06-05T00:45:23.4382674Z             {
2026-06-05T00:45:23.4383218Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4383681Z               "line": 1339
2026-06-05T00:45:23.4384103Z             },
2026-06-05T00:45:23.4384509Z             {
2026-06-05T00:45:23.4385097Z               "path": "crates/spt/src/elevation.rs",
2026-06-05T00:45:23.4386116Z               "line": 18
2026-06-05T00:45:23.4386566Z             },
2026-06-05T00:45:23.4393201Z             {
2026-06-05T00:45:23.4393911Z               "path": "crates/spt/src/elevation.rs",
2026-06-05T00:45:23.4394399Z               "line": 49
2026-06-05T00:45:23.4394832Z             },
2026-06-05T00:45:23.4395284Z             {
2026-06-05T00:45:23.4395914Z               "path": "crates/spt/src/elevation.rs",
2026-06-05T00:45:23.4396401Z               "line": 70
2026-06-05T00:45:23.4396846Z             }
2026-06-05T00:45:23.4397286Z           ]
2026-06-05T00:45:23.4397713Z         },
2026-06-05T00:45:23.4398157Z         "int": {
2026-06-05T00:45:23.4398658Z           "complete": false,
2026-06-05T00:45:23.4399126Z           "evidence": []
2026-06-05T00:45:23.4400031Z         },
2026-06-05T00:45:23.4400476Z         "unit": {
2026-06-05T00:45:23.4400970Z           "complete": true,
2026-06-05T00:45:23.4401424Z           "evidence": [
2026-06-05T00:45:23.4401893Z             {
2026-06-05T00:45:23.4402448Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4402911Z               "line": 3455
2026-06-05T00:45:23.4403420Z             },
2026-06-05T00:45:23.4403825Z             {
2026-06-05T00:45:23.4404379Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.4404833Z               "line": 3472
2026-06-05T00:45:23.4405236Z             },
2026-06-05T00:45:23.4405650Z             {
2026-06-05T00:45:23.4406226Z               "path": "crates/spt/src/elevation.rs",
2026-06-05T00:45:23.4406682Z               "line": 132
2026-06-05T00:45:23.4407112Z             },
2026-06-05T00:45:23.4407522Z             {
2026-06-05T00:45:23.4408110Z               "path": "crates/spt/src/elevation.rs",
2026-06-05T00:45:23.4408573Z               "line": 141
2026-06-05T00:45:23.4409020Z             }
2026-06-05T00:45:23.4409634Z           ]
2026-06-05T00:45:23.4410125Z         }
2026-06-05T00:45:23.4410615Z       }
2026-06-05T00:45:23.4411077Z     },
2026-06-05T00:45:23.4411676Z     {
2026-06-05T00:45:23.4412185Z       "id": "REQ-PAIR-7",
2026-06-05T00:45:23.4413153Z       "title": "Subnet icon (inline image metadata, GUI-only consumer)",
2026-06-05T00:45:23.4413680Z       "requiredStages": [],
2026-06-05T00:45:23.4414140Z       "stages": {
2026-06-05T00:45:23.4414587Z         "doc": {
2026-06-05T00:45:23.4415071Z           "complete": false,
2026-06-05T00:45:23.4415571Z           "evidence": []
2026-06-05T00:45:23.4416021Z         },
2026-06-05T00:45:23.4416492Z         "impl": {
2026-06-05T00:45:23.4416992Z           "complete": false,
2026-06-05T00:45:23.4417486Z           "evidence": []
2026-06-05T00:45:23.4417917Z         },
2026-06-05T00:45:23.4418369Z         "int": {
2026-06-05T00:45:23.4418853Z           "complete": false,
2026-06-05T00:45:23.4419600Z           "evidence": []
2026-06-05T00:45:23.4420246Z         },
2026-06-05T00:45:23.4420708Z         "unit": {
2026-06-05T00:45:23.4421211Z           "complete": false,
2026-06-05T00:45:23.4421713Z           "evidence": []
2026-06-05T00:45:23.4422157Z         }
2026-06-05T00:45:23.4422609Z       }
2026-06-05T00:45:23.4423046Z     },
2026-06-05T00:45:23.4423468Z     {
2026-06-05T00:45:23.4423954Z       "id": "REQ-PRES-1",
2026-06-05T00:45:23.4432770Z       "title": "Presence resolution: the presence datum (last_active_node, last_active_endpoint, ts) gossiped subnet-wide via the agent-interaction heartbeat (rides registry distribution, visibility-gated) + one first-class most-recently-active resolution API consumed by notif first-fire, update-consent delivery, consent escalation, and shell wake resolution (M5 scope decision 1: resolution only — the PresenceChannel endpoint stays deferred)",
2026-06-05T00:45:23.4433302Z       "requiredStages": [],
2026-06-05T00:45:23.4433723Z       "stages": {
2026-06-05T00:45:23.4434146Z         "doc": {
2026-06-05T00:45:23.4434611Z           "complete": false,
2026-06-05T00:45:23.4435080Z           "evidence": []
2026-06-05T00:45:23.4435498Z         },
2026-06-05T00:45:23.4445373Z         "impl": {
2026-06-05T00:45:23.4445883Z           "complete": false,
2026-06-05T00:45:23.4446365Z           "evidence": []
2026-06-05T00:45:23.4446997Z         },
2026-06-05T00:45:23.4447443Z         "int": {
2026-06-05T00:45:23.4447943Z           "complete": false,
2026-06-05T00:45:23.4448416Z           "evidence": []
2026-06-05T00:45:23.4448835Z         },
2026-06-05T00:45:23.4449331Z         "unit": {
2026-06-05T00:45:23.4449828Z           "complete": false,
2026-06-05T00:45:23.4450299Z           "evidence": []
2026-06-05T00:45:23.4450722Z         }
2026-06-05T00:45:23.4451163Z       }
2026-06-05T00:45:23.4451613Z     },
2026-06-05T00:45:23.4452689Z     {
2026-06-05T00:45:23.4460119Z       "id": "REQ-REACH-1",
2026-06-05T00:45:23.4461818Z       "title": "Off-node remote-drive detection + file transfer",
2026-06-05T00:45:23.4463679Z       "requiredStages": [
2026-06-05T00:45:23.4464977Z         "impl",
2026-06-05T00:45:23.4466131Z         "unit",
2026-06-05T00:45:23.4467197Z         "int"
2026-06-05T00:45:23.4468297Z       ],
2026-06-05T00:45:23.4469452Z       "stages": {
2026-06-05T00:45:23.4470574Z         "doc": {
2026-06-05T00:45:23.4471723Z           "complete": false,
2026-06-05T00:45:23.4472993Z           "evidence": []
2026-06-05T00:45:23.4474226Z         },
2026-06-05T00:45:23.4475285Z         "impl": {
2026-06-05T00:45:23.4476422Z           "complete": true,
2026-06-05T00:45:23.4477725Z           "evidence": [
2026-06-05T00:45:23.4478969Z             {
2026-06-05T00:45:23.4480334Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-05T00:45:23.4481987Z               "line": 133
2026-06-05T00:45:23.4483262Z             },
2026-06-05T00:45:23.4484417Z             {
2026-06-05T00:45:23.4485762Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-05T00:45:23.4487426Z               "line": 76
2026-06-05T00:45:23.4488612Z             },
2026-06-05T00:45:23.4489838Z             {
2026-06-05T00:45:23.4491002Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-05T00:45:23.4492536Z               "line": 209
2026-06-05T00:45:23.4493659Z             },
2026-06-05T00:45:23.4494663Z             {
2026-06-05T00:45:23.4495850Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-05T00:45:23.4497380Z               "line": 386
2026-06-05T00:45:23.4498504Z             },
2026-06-05T00:45:23.4499846Z             {
2026-06-05T00:45:23.4501027Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-05T00:45:23.4502557Z               "line": 484
2026-06-05T00:45:23.4503682Z             },
2026-06-05T00:45:23.4504664Z             {
2026-06-05T00:45:23.4505833Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-05T00:45:23.4507361Z               "line": 39
2026-06-05T00:45:23.4508465Z             },
2026-06-05T00:45:23.4509680Z             {
2026-06-05T00:45:23.4510990Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.4512510Z               "line": 217
2026-06-05T00:45:23.4513642Z             },
2026-06-05T00:45:23.4514644Z             {
2026-06-05T00:45:23.4515809Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-05T00:45:23.4517342Z               "line": 82
2026-06-05T00:45:23.4518463Z             },
2026-06-05T00:45:23.4519664Z             {
2026-06-05T00:45:23.4521008Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-05T00:45:23.4522523Z               "line": 92
2026-06-05T00:45:23.4523645Z             },
2026-06-05T00:45:23.4524637Z             {
2026-06-05T00:45:23.4525846Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.4527406Z               "line": 189
2026-06-05T00:45:23.4528537Z             }
2026-06-05T00:45:23.4529739Z           ]
2026-06-05T00:45:23.4530846Z         },
2026-06-05T00:45:23.4531793Z         "int": {
2026-06-05T00:45:23.4532856Z           "complete": true,
2026-06-05T00:45:23.4534058Z           "evidence": [
2026-06-05T00:45:23.4535153Z             {
2026-06-05T00:45:23.4536389Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-05T00:45:23.4538494Z               "line": 375
2026-06-05T00:45:23.4539961Z             },
2026-06-05T00:45:23.4540961Z             {
2026-06-05T00:45:23.4542399Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-05T00:45:23.4544018Z               "line": 478
2026-06-05T00:45:23.4545148Z             },
2026-06-05T00:45:23.4546146Z             {
2026-06-05T00:45:23.4547362Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.4548956Z               "line": 661
2026-06-05T00:45:23.4550147Z             },
2026-06-05T00:45:23.4551142Z             {
2026-06-05T00:45:23.4552360Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.4553956Z               "line": 755
2026-06-05T00:45:23.4560527Z             }
2026-06-05T00:45:23.4561696Z           ]
2026-06-05T00:45:23.4562639Z         },
2026-06-05T00:45:23.4563579Z         "unit": {
2026-06-05T00:45:23.4564637Z           "complete": true,
2026-06-05T00:45:23.4565828Z           "evidence": [
2026-06-05T00:45:23.4566962Z             {
2026-06-05T00:45:23.4568152Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-05T00:45:23.4569748Z               "line": 585
2026-06-05T00:45:23.4570870Z             },
2026-06-05T00:45:23.4571846Z             {
2026-06-05T00:45:23.4572999Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-05T00:45:23.4574514Z               "line": 606
2026-06-05T00:45:23.4575643Z             },
2026-06-05T00:45:23.4576615Z             {
2026-06-05T00:45:23.4577809Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-05T00:45:23.4579416Z               "line": 337
2026-06-05T00:45:23.4580533Z             },
2026-06-05T00:45:23.4581509Z             {
2026-06-05T00:45:23.4582702Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-05T00:45:23.4584237Z               "line": 92
2026-06-05T00:45:23.4585350Z             },
2026-06-05T00:45:23.4586322Z             {
2026-06-05T00:45:23.4587499Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-05T00:45:23.4589059Z               "line": 176
2026-06-05T00:45:23.4590214Z             },
2026-06-05T00:45:23.4591207Z             {
2026-06-05T00:45:23.4592362Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-05T00:45:23.4593881Z               "line": 92
2026-06-05T00:45:23.4594988Z             },
2026-06-05T00:45:23.4595977Z             {
2026-06-05T00:45:23.4597133Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-05T00:45:23.4598651Z               "line": 123
2026-06-05T00:45:23.4599799Z             },
2026-06-05T00:45:23.4600778Z             {
2026-06-05T00:45:23.4601921Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.4603424Z               "line": 436
2026-06-05T00:45:23.4604544Z             },
2026-06-05T00:45:23.4605518Z             {
2026-06-05T00:45:23.4606658Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-05T00:45:23.4608156Z               "line": 112
2026-06-05T00:45:23.4609306Z             },
2026-06-05T00:45:23.4610303Z             {
2026-06-05T00:45:23.4611433Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-05T00:45:23.4612955Z               "line": 136
2026-06-05T00:45:23.4614073Z             },
2026-06-05T00:45:23.4615050Z             {
2026-06-05T00:45:23.4616222Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.4617760Z               "line": 494
2026-06-05T00:45:23.4618870Z             }
2026-06-05T00:45:23.4619865Z           ]
2026-06-05T00:45:23.4620804Z         }
2026-06-05T00:45:23.4621715Z       }
2026-06-05T00:45:23.4622610Z     },
2026-06-05T00:45:23.4623514Z     {
2026-06-05T00:45:23.4624474Z       "id": "REQ-REACH-2",
2026-06-05T00:45:23.4626044Z       "title": "Remote command execution (deferred, consent-gated)",
2026-06-05T00:45:23.4627876Z       "requiredStages": [],
2026-06-05T00:45:23.4629066Z       "stages": {
2026-06-05T00:45:23.4630136Z         "doc": {
2026-06-05T00:45:23.4631181Z           "complete": false,
2026-06-05T00:45:23.4632723Z           "evidence": []
2026-06-05T00:45:23.4633834Z         },
2026-06-05T00:45:23.4634770Z         "impl": {
2026-06-05T00:45:23.4636051Z           "complete": false,
2026-06-05T00:45:23.4637271Z           "evidence": []
2026-06-05T00:45:23.4638377Z         },
2026-06-05T00:45:23.4639355Z         "int": {
2026-06-05T00:45:23.4640423Z           "complete": false,
2026-06-05T00:45:23.4641633Z           "evidence": []
2026-06-05T00:45:23.4642734Z         },
2026-06-05T00:45:23.4643722Z         "unit": {
2026-06-05T00:45:23.4644795Z           "complete": false,
2026-06-05T00:45:23.4646001Z           "evidence": []
2026-06-05T00:45:23.4647103Z         }
2026-06-05T00:45:23.4648029Z       }
2026-06-05T00:45:23.4649004Z     },
2026-06-05T00:45:23.4649966Z     {
2026-06-05T00:45:23.4650986Z       "id": "REQ-SEAM-ACTIVITY",
2026-06-05T00:45:23.4652851Z       "title": "Activity/idle reported via api sentinels, not PTY quiescence",
2026-06-05T00:45:23.4654883Z       "requiredStages": [
2026-06-05T00:45:23.4656070Z         "impl",
2026-06-05T00:45:23.4660597Z         "unit"
2026-06-05T00:45:23.4661688Z       ],
2026-06-05T00:45:23.4662616Z       "stages": {
2026-06-05T00:45:23.4663669Z         "doc": {
2026-06-05T00:45:23.4664717Z           "complete": false,
2026-06-05T00:45:23.4665916Z           "evidence": []
2026-06-05T00:45:23.4667012Z         },
2026-06-05T00:45:23.4667958Z         "impl": {
2026-06-05T00:45:23.4669026Z           "complete": true,
2026-06-05T00:45:23.4670259Z           "evidence": [
2026-06-05T00:45:23.4671339Z             {
2026-06-05T00:45:23.4672502Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:23.4674023Z               "line": 18
2026-06-05T00:45:23.4675110Z             },
2026-06-05T00:45:23.4676083Z             {
2026-06-05T00:45:23.4677235Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:23.4678749Z               "line": 35
2026-06-05T00:45:23.4679885Z             },
2026-06-05T00:45:23.4680855Z             {
2026-06-05T00:45:23.4682020Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:23.4683515Z               "line": 65
2026-06-05T00:45:23.4684620Z             }
2026-06-05T00:45:23.4685572Z           ]
2026-06-05T00:45:23.4686497Z         },
2026-06-05T00:45:23.4687428Z         "int": {
2026-06-05T00:45:23.4688473Z           "complete": false,
2026-06-05T00:45:23.4689732Z           "evidence": []
2026-06-05T00:45:23.4690839Z         },
2026-06-05T00:45:23.4691777Z         "unit": {
2026-06-05T00:45:23.4692821Z           "complete": true,
2026-06-05T00:45:23.4694042Z           "evidence": [
2026-06-05T00:45:23.4695119Z             {
2026-06-05T00:45:23.4696276Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:23.4697803Z               "line": 194
2026-06-05T00:45:23.4698910Z             },
2026-06-05T00:45:23.4699914Z             {
2026-06-05T00:45:23.4701074Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:23.4702597Z               "line": 208
2026-06-05T00:45:23.4703721Z             },
2026-06-05T00:45:23.4704682Z             {
2026-06-05T00:45:23.4705837Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:23.4707374Z               "line": 217
2026-06-05T00:45:23.4708488Z             }
2026-06-05T00:45:23.4709489Z           ]
2026-06-05T00:45:23.4710416Z         }
2026-06-05T00:45:23.4711329Z       }
2026-06-05T00:45:23.4712223Z     },
2026-06-05T00:45:23.4713131Z     {
2026-06-05T00:45:23.4714120Z       "id": "REQ-SEAM-CAPABILITY",
2026-06-05T00:45:23.4715781Z       "title": "Hostable endpoint-types capability declaration",
2026-06-05T00:45:23.4717535Z       "requiredStages": [
2026-06-05T00:45:23.4718677Z         "impl",
2026-06-05T00:45:23.4719699Z         "unit"
2026-06-05T00:45:23.4720671Z       ],
2026-06-05T00:45:23.4721597Z       "stages": {
2026-06-05T00:45:23.4722595Z         "doc": {
2026-06-05T00:45:23.4723635Z           "complete": false,
2026-06-05T00:45:23.4724841Z           "evidence": []
2026-06-05T00:45:23.4725951Z         },
2026-06-05T00:45:23.4727193Z         "impl": {
2026-06-05T00:45:23.4728247Z           "complete": true,
2026-06-05T00:45:23.4729468Z           "evidence": [
2026-06-05T00:45:23.4730708Z             {
2026-06-05T00:45:23.4731899Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.4733447Z               "line": 322
2026-06-05T00:45:23.4734560Z             }
2026-06-05T00:45:23.4735521Z           ]
2026-06-05T00:45:23.4736444Z         },
2026-06-05T00:45:23.4737386Z         "int": {
2026-06-05T00:45:23.4738428Z           "complete": false,
2026-06-05T00:45:23.4739680Z           "evidence": []
2026-06-05T00:45:23.4740796Z         },
2026-06-05T00:45:23.4741739Z         "unit": {
2026-06-05T00:45:23.4742786Z           "complete": true,
2026-06-05T00:45:23.4743967Z           "evidence": [
2026-06-05T00:45:23.4745049Z             {
2026-06-05T00:45:23.4746241Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.4747788Z               "line": 527
2026-06-05T00:45:23.4748919Z             }
2026-06-05T00:45:23.4749956Z           ]
2026-06-05T00:45:23.4750892Z         }
2026-06-05T00:45:23.4751810Z       }
2026-06-05T00:45:23.4756133Z     },
2026-06-05T00:45:23.4757126Z     {
2026-06-05T00:45:23.4758105Z       "id": "REQ-SEAM-HISTORY",
2026-06-05T00:45:23.4760059Z       "title": "History subsystem (fetcher / locate-normalize / native store)",
2026-06-05T00:45:23.4762078Z       "requiredStages": [
2026-06-05T00:45:23.4763212Z         "impl",
2026-06-05T00:45:23.4764205Z         "unit",
2026-06-05T00:45:23.4765415Z         "int"
2026-06-05T00:45:23.4766541Z       ],
2026-06-05T00:45:23.4767674Z       "stages": {
2026-06-05T00:45:23.4768936Z         "doc": {
2026-06-05T00:45:23.4770381Z           "complete": false,
2026-06-05T00:45:23.4771936Z           "evidence": []
2026-06-05T00:45:23.4773109Z         },
2026-06-05T00:45:23.4774313Z         "impl": {
2026-06-05T00:45:23.4775486Z           "complete": true,
2026-06-05T00:45:23.4776766Z           "evidence": [
2026-06-05T00:45:23.4778022Z             {
2026-06-05T00:45:23.4779297Z               "path": "crates/spt-live/src/echo.rs",
2026-06-05T00:45:23.4781013Z               "line": 24
2026-06-05T00:45:23.4782152Z             },
2026-06-05T00:45:23.4783137Z             {
2026-06-05T00:45:23.4784395Z               "path": "crates/spt-live/src/history.rs",
2026-06-05T00:45:23.4785949Z               "line": 22
2026-06-05T00:45:23.4787075Z             }
2026-06-05T00:45:23.4788299Z           ]
2026-06-05T00:45:23.4789577Z         },
2026-06-05T00:45:23.4790780Z         "int": {
2026-06-05T00:45:23.4791868Z           "complete": true,
2026-06-05T00:45:23.4793307Z           "evidence": [
2026-06-05T00:45:23.4794443Z             {
2026-06-05T00:45:23.4795677Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-05T00:45:23.4797310Z               "line": 202
2026-06-05T00:45:23.4798521Z             }
2026-06-05T00:45:23.4799650Z           ]
2026-06-05T00:45:23.4800755Z         },
2026-06-05T00:45:23.4801705Z         "unit": {
2026-06-05T00:45:23.4802828Z           "complete": true,
2026-06-05T00:45:23.4804082Z           "evidence": [
2026-06-05T00:45:23.4805246Z             {
2026-06-05T00:45:23.4806473Z               "path": "crates/spt-live/src/echo.rs",
2026-06-05T00:45:23.4808060Z               "line": 163
2026-06-05T00:45:23.4809256Z             },
2026-06-05T00:45:23.4810560Z             {
2026-06-05T00:45:23.4811694Z               "path": "crates/spt-live/src/echo.rs",
2026-06-05T00:45:23.4813197Z               "line": 186
2026-06-05T00:45:23.4814329Z             },
2026-06-05T00:45:23.4815308Z             {
2026-06-05T00:45:23.4816447Z               "path": "crates/spt-live/src/echo.rs",
2026-06-05T00:45:23.4817942Z               "line": 195
2026-06-05T00:45:23.4819070Z             },
2026-06-05T00:45:23.4820263Z             {
2026-06-05T00:45:23.4821471Z               "path": "crates/spt-live/src/history.rs",
2026-06-05T00:45:23.4823061Z               "line": 195
2026-06-05T00:45:23.4824217Z             },
2026-06-05T00:45:23.4825798Z             {
2026-06-05T00:45:23.4827009Z               "path": "crates/spt-live/src/history.rs",
2026-06-05T00:45:23.4828810Z               "line": 209
2026-06-05T00:45:23.4830175Z             },
2026-06-05T00:45:23.4831171Z             {
2026-06-05T00:45:23.4832351Z               "path": "crates/spt-live/src/history.rs",
2026-06-05T00:45:23.4833896Z               "line": 228
2026-06-05T00:45:23.4835032Z             },
2026-06-05T00:45:23.4836008Z             {
2026-06-05T00:45:23.4837187Z               "path": "crates/spt-live/src/history.rs",
2026-06-05T00:45:23.4838734Z               "line": 248
2026-06-05T00:45:23.4840179Z             },
2026-06-05T00:45:23.4841160Z             {
2026-06-05T00:45:23.4842557Z               "path": "crates/spt-live/src/history.rs",
2026-06-05T00:45:23.4844230Z               "line": 264
2026-06-05T00:45:23.4845407Z             },
2026-06-05T00:45:23.4846440Z             {
2026-06-05T00:45:23.4847661Z               "path": "crates/spt-live/src/history.rs",
2026-06-05T00:45:23.4849330Z               "line": 279
2026-06-05T00:45:23.4850612Z             }
2026-06-05T00:45:23.4851582Z           ]
2026-06-05T00:45:23.4852547Z         }
2026-06-05T00:45:23.4853481Z       }
2026-06-05T00:45:23.4854391Z     },
2026-06-05T00:45:23.4855296Z     {
2026-06-05T00:45:23.4856293Z       "id": "REQ-SEAM-INJECT",
2026-06-05T00:45:23.4864081Z       "title": "inject-input methods configurable per activity-state",
2026-06-05T00:45:23.4866062Z       "requiredStages": [
2026-06-05T00:45:23.4867224Z         "impl",
2026-06-05T00:45:23.4868211Z         "unit"
2026-06-05T00:45:23.4869247Z       ],
2026-06-05T00:45:23.4870366Z       "stages": {
2026-06-05T00:45:23.4871418Z         "doc": {
2026-06-05T00:45:23.4872510Z           "complete": false,
2026-06-05T00:45:23.4873779Z           "evidence": []
2026-06-05T00:45:23.4874936Z         },
2026-06-05T00:45:23.4875924Z         "impl": {
2026-06-05T00:45:23.4877023Z           "complete": true,
2026-06-05T00:45:23.4878261Z           "evidence": [
2026-06-05T00:45:23.4879467Z             {
2026-06-05T00:45:23.4880781Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:23.4882345Z               "line": 19
2026-06-05T00:45:23.4883450Z             },
2026-06-05T00:45:23.4884418Z             {
2026-06-05T00:45:23.4885584Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:23.4887128Z               "line": 104
2026-06-05T00:45:23.4888249Z             }
2026-06-05T00:45:23.4889243Z           ]
2026-06-05T00:45:23.4890184Z         },
2026-06-05T00:45:23.4891118Z         "int": {
2026-06-05T00:45:23.4892181Z           "complete": false,
2026-06-05T00:45:23.4893399Z           "evidence": []
2026-06-05T00:45:23.4894514Z         },
2026-06-05T00:45:23.4895459Z         "unit": {
2026-06-05T00:45:23.4896508Z           "complete": true,
2026-06-05T00:45:23.4897699Z           "evidence": [
2026-06-05T00:45:23.4898773Z             {
2026-06-05T00:45:23.4899991Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:23.4901548Z               "line": 246
2026-06-05T00:45:23.4902661Z             },
2026-06-05T00:45:23.4903632Z             {
2026-06-05T00:45:23.4904804Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:23.4906347Z               "line": 260
2026-06-05T00:45:23.4907462Z             }
2026-06-05T00:45:23.4908423Z           ]
2026-06-05T00:45:23.4909406Z         }
2026-06-05T00:45:23.4910350Z       }
2026-06-05T00:45:23.4911257Z     },
2026-06-05T00:45:23.4912171Z     {
2026-06-05T00:45:23.4913169Z       "id": "REQ-SEAM-POSTSPAWN",
2026-06-05T00:45:23.4914762Z       "title": "post-spawn / api bind seam with boot nonce",
2026-06-05T00:45:23.4916453Z       "requiredStages": [
2026-06-05T00:45:23.4917603Z         "impl",
2026-06-05T00:45:23.4918606Z         "unit"
2026-06-05T00:45:23.4919618Z       ],
2026-06-05T00:45:23.4920563Z       "stages": {
2026-06-05T00:45:23.4921579Z         "doc": {
2026-06-05T00:45:23.4922628Z           "complete": false,
2026-06-05T00:45:23.4924256Z           "evidence": []
2026-06-05T00:45:23.4925374Z         },
2026-06-05T00:45:23.4926312Z         "impl": {
2026-06-05T00:45:23.4927531Z           "complete": true,
2026-06-05T00:45:23.4928725Z           "evidence": [
2026-06-05T00:45:23.4929859Z             {
2026-06-05T00:45:23.4931019Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.4932553Z               "line": 18
2026-06-05T00:45:23.4933653Z             },
2026-06-05T00:45:23.4934627Z             {
2026-06-05T00:45:23.4935779Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.4937299Z               "line": 304
2026-06-05T00:45:23.4938412Z             }
2026-06-05T00:45:23.4939583Z           ]
2026-06-05T00:45:23.4940721Z         },
2026-06-05T00:45:23.4941660Z         "int": {
2026-06-05T00:45:23.4942693Z           "complete": false,
2026-06-05T00:45:23.4943900Z           "evidence": []
2026-06-05T00:45:23.4944998Z         },
2026-06-05T00:45:23.4945941Z         "unit": {
2026-06-05T00:45:23.4947013Z           "complete": true,
2026-06-05T00:45:23.4948203Z           "evidence": [
2026-06-05T00:45:23.4949326Z             {
2026-06-05T00:45:23.4950512Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.4952067Z               "line": 526
2026-06-05T00:45:23.4953188Z             },
2026-06-05T00:45:23.4954155Z             {
2026-06-05T00:45:23.4955306Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.4956846Z               "line": 536
2026-06-05T00:45:23.4957971Z             }
2026-06-05T00:45:23.4968421Z           ]
2026-06-05T00:45:23.4969878Z         }
2026-06-05T00:45:23.4970842Z       }
2026-06-05T00:45:23.4971763Z     },
2026-06-05T00:45:23.4972682Z     {
2026-06-05T00:45:23.4973822Z       "id": "REQ-SEAM-PSYCHE",
2026-06-05T00:45:23.4975477Z       "title": "spawn-psyche seam (fresh + resume templates)",
2026-06-05T00:45:23.4977292Z       "requiredStages": [
2026-06-05T00:45:23.4978509Z         "impl",
2026-06-05T00:45:23.4979773Z         "unit",
2026-06-05T00:45:23.4981042Z         "int"
2026-06-05T00:45:23.4982062Z       ],
2026-06-05T00:45:23.4983057Z       "stages": {
2026-06-05T00:45:23.4984156Z         "doc": {
2026-06-05T00:45:23.4985257Z           "complete": false,
2026-06-05T00:45:23.4986546Z           "evidence": []
2026-06-05T00:45:23.4987742Z         },
2026-06-05T00:45:23.4992465Z         "impl": {
2026-06-05T00:45:23.4993742Z           "complete": true,
2026-06-05T00:45:23.4995064Z           "evidence": [
2026-06-05T00:45:23.4996256Z             {
2026-06-05T00:45:23.4997540Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-05T00:45:23.4999310Z               "line": 19
2026-06-05T00:45:23.5000690Z             },
2026-06-05T00:45:23.5001745Z             {
2026-06-05T00:45:23.5002955Z               "path": "crates/spt/src/api/live.rs",
2026-06-05T00:45:23.5004491Z               "line": 12
2026-06-05T00:45:23.5005751Z             },
2026-06-05T00:45:23.5006781Z             {
2026-06-05T00:45:23.5007979Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.5009805Z               "line": 204
2026-06-05T00:45:23.5010934Z             }
2026-06-05T00:45:23.5011918Z           ]
2026-06-05T00:45:23.5012856Z         },
2026-06-05T00:45:23.5013944Z         "int": {
2026-06-05T00:45:23.5015045Z           "complete": true,
2026-06-05T00:45:23.5016292Z           "evidence": [
2026-06-05T00:45:23.5017426Z             {
2026-06-05T00:45:23.5018655Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-05T00:45:23.5020472Z               "line": 201
2026-06-05T00:45:23.5021607Z             }
2026-06-05T00:45:23.5022599Z           ]
2026-06-05T00:45:23.5023544Z         },
2026-06-05T00:45:23.5024505Z         "unit": {
2026-06-05T00:45:23.5025567Z           "complete": true,
2026-06-05T00:45:23.5026778Z           "evidence": [
2026-06-05T00:45:23.5027874Z             {
2026-06-05T00:45:23.5029054Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-05T00:45:23.5030972Z               "line": 161
2026-06-05T00:45:23.5032615Z             },
2026-06-05T00:45:23.5033595Z             {
2026-06-05T00:45:23.5034772Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-05T00:45:23.5036505Z               "line": 168
2026-06-05T00:45:23.5037637Z             },
2026-06-05T00:45:23.5038614Z             {
2026-06-05T00:45:23.5040185Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-05T00:45:23.5041727Z               "line": 191
2026-06-05T00:45:23.5042849Z             },
2026-06-05T00:45:23.5043843Z             {
2026-06-05T00:45:23.5044997Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-05T00:45:23.5046544Z               "line": 106
2026-06-05T00:45:23.5047662Z             },
2026-06-05T00:45:23.5048640Z             {
2026-06-05T00:45:23.5049836Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-05T00:45:23.5051546Z               "line": 123
2026-06-05T00:45:23.5052854Z             },
2026-06-05T00:45:23.5053954Z             {
2026-06-05T00:45:23.5055104Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-05T00:45:23.5056682Z               "line": 137
2026-06-05T00:45:23.5057802Z             }
2026-06-05T00:45:23.5058785Z           ]
2026-06-05T00:45:23.5059768Z         }
2026-06-05T00:45:23.5060697Z       }
2026-06-05T00:45:23.5061603Z     },
2026-06-05T00:45:23.5062517Z     {
2026-06-05T00:45:23.5063503Z       "id": "REQ-SEAM-RESUME",
2026-06-05T00:45:23.5065394Z       "title": "resume-session seam (fresh-with-preload / continue-existing)",
2026-06-05T00:45:23.5067510Z       "requiredStages": [
2026-06-05T00:45:23.5068669Z         "impl",
2026-06-05T00:45:23.5069814Z         "unit"
2026-06-05T00:45:23.5070799Z       ],
2026-06-05T00:45:23.5076261Z       "stages": {
2026-06-05T00:45:23.5077469Z         "doc": {
2026-06-05T00:45:23.5078531Z           "complete": false,
2026-06-05T00:45:23.5079841Z           "evidence": []
2026-06-05T00:45:23.5080946Z         },
2026-06-05T00:45:23.5081887Z         "impl": {
2026-06-05T00:45:23.5082956Z           "complete": true,
2026-06-05T00:45:23.5084179Z           "evidence": [
2026-06-05T00:45:23.5085270Z             {
2026-06-05T00:45:23.5086427Z               "path": "crates/spt-live/src/resume.rs",
2026-06-05T00:45:23.5087950Z               "line": 19
2026-06-05T00:45:23.5089047Z             }
2026-06-05T00:45:23.5090042Z           ]
2026-06-05T00:45:23.5090965Z         },
2026-06-05T00:45:23.5091901Z         "int": {
2026-06-05T00:45:23.5092945Z           "complete": false,
2026-06-05T00:45:23.5094146Z           "evidence": []
2026-06-05T00:45:23.5094551Z         },
2026-06-05T00:45:23.5094981Z         "unit": {
2026-06-05T00:45:23.5095442Z           "complete": true,
2026-06-05T00:45:23.5095884Z           "evidence": [
2026-06-05T00:45:23.5096298Z             {
2026-06-05T00:45:23.5096891Z               "path": "crates/spt-live/src/resume.rs",
2026-06-05T00:45:23.5097339Z               "line": 168
2026-06-05T00:45:23.5097747Z             },
2026-06-05T00:45:23.5098164Z             {
2026-06-05T00:45:23.5098761Z               "path": "crates/spt-live/src/resume.rs",
2026-06-05T00:45:23.5099257Z               "line": 187
2026-06-05T00:45:23.5099674Z             },
2026-06-05T00:45:23.5100094Z             {
2026-06-05T00:45:23.5100693Z               "path": "crates/spt-live/src/resume.rs",
2026-06-05T00:45:23.5101127Z               "line": 205
2026-06-05T00:45:23.5101543Z             }
2026-06-05T00:45:23.5101953Z           ]
2026-06-05T00:45:23.5102353Z         }
2026-06-05T00:45:23.5102761Z       }
2026-06-05T00:45:23.5103158Z     },
2026-06-05T00:45:23.5103558Z     {
2026-06-05T00:45:23.5104028Z       "id": "REQ-SEAM-SPAWN",
2026-06-05T00:45:23.5104551Z       "title": "spawn-session seam",
2026-06-05T00:45:23.5105030Z       "requiredStages": [
2026-06-05T00:45:23.5105464Z         "impl",
2026-06-05T00:45:23.5105882Z         "unit"
2026-06-05T00:45:23.5106285Z       ],
2026-06-05T00:45:23.5106717Z       "stages": {
2026-06-05T00:45:23.5107125Z         "doc": {
2026-06-05T00:45:23.5107591Z           "complete": false,
2026-06-05T00:45:23.5108362Z           "evidence": []
2026-06-05T00:45:23.5108777Z         },
2026-06-05T00:45:23.5109243Z         "impl": {
2026-06-05T00:45:23.5109864Z           "complete": true,
2026-06-05T00:45:23.5110319Z           "evidence": [
2026-06-05T00:45:23.5110723Z             {
2026-06-05T00:45:23.5111384Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-05T00:45:23.5111822Z               "line": 20
2026-06-05T00:45:23.5112236Z             }
2026-06-05T00:45:23.5112649Z           ]
2026-06-05T00:45:23.5113051Z         },
2026-06-05T00:45:23.5113470Z         "int": {
2026-06-05T00:45:23.5113926Z           "complete": false,
2026-06-05T00:45:23.5114378Z           "evidence": []
2026-06-05T00:45:23.5114782Z         },
2026-06-05T00:45:23.5115211Z         "unit": {
2026-06-05T00:45:23.5115668Z           "complete": true,
2026-06-05T00:45:23.5116102Z           "evidence": [
2026-06-05T00:45:23.5116521Z             {
2026-06-05T00:45:23.5117164Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-05T00:45:23.5117634Z               "line": 397
2026-06-05T00:45:23.5118041Z             },
2026-06-05T00:45:23.5118462Z             {
2026-06-05T00:45:23.5119132Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-05T00:45:23.5119621Z               "line": 404
2026-06-05T00:45:23.5120043Z             },
2026-06-05T00:45:23.5120439Z             {
2026-06-05T00:45:23.5121098Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-05T00:45:23.5121539Z               "line": 414
2026-06-05T00:45:23.5121953Z             },
2026-06-05T00:45:23.5122365Z             {
2026-06-05T00:45:23.5123010Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-05T00:45:23.5123452Z               "line": 420
2026-06-05T00:45:23.5123864Z             },
2026-06-05T00:45:23.5124283Z             {
2026-06-05T00:45:23.5124974Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-05T00:45:23.5125766Z               "line": 440
2026-06-05T00:45:23.5126413Z             },
2026-06-05T00:45:23.5126896Z             {
2026-06-05T00:45:23.5127656Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-05T00:45:23.5128270Z               "line": 473
2026-06-05T00:45:23.5128686Z             }
2026-06-05T00:45:23.5129106Z           ]
2026-06-05T00:45:23.5129564Z         }
2026-06-05T00:45:23.5129975Z       }
2026-06-05T00:45:23.5130368Z     },
2026-06-05T00:45:23.5130772Z     {
2026-06-05T00:45:23.5131248Z       "id": "REQ-SEAM-UPDATE",
2026-06-05T00:45:23.5132168Z       "title": "Adapter-update avenue (file-pull / delegated command)",
2026-06-05T00:45:23.5132639Z       "requiredStages": [
2026-06-05T00:45:23.5133061Z         "impl",
2026-06-05T00:45:23.5133517Z         "unit"
2026-06-05T00:45:23.5133922Z       ],
2026-06-05T00:45:23.5134346Z       "stages": {
2026-06-05T00:45:23.5134759Z         "doc": {
2026-06-05T00:45:23.5135229Z           "complete": false,
2026-06-05T00:45:23.5135681Z           "evidence": []
2026-06-05T00:45:23.5136088Z         },
2026-06-05T00:45:23.5136535Z         "impl": {
2026-06-05T00:45:23.5136989Z           "complete": true,
2026-06-05T00:45:23.5137439Z           "evidence": [
2026-06-05T00:45:23.5137857Z             {
2026-06-05T00:45:23.5138576Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.5139017Z               "line": 28
2026-06-05T00:45:23.5139467Z             },
2026-06-05T00:45:23.5139889Z             {
2026-06-05T00:45:23.5140601Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.5141048Z               "line": 83
2026-06-05T00:45:23.5141461Z             }
2026-06-05T00:45:23.5141878Z           ]
2026-06-05T00:45:23.5142295Z         },
2026-06-05T00:45:23.5142704Z         "int": {
2026-06-05T00:45:23.5143172Z           "complete": false,
2026-06-05T00:45:23.5143622Z           "evidence": []
2026-06-05T00:45:23.5144033Z         },
2026-06-05T00:45:23.5144446Z         "unit": {
2026-06-05T00:45:23.5144920Z           "complete": true,
2026-06-05T00:45:23.5145370Z           "evidence": [
2026-06-05T00:45:23.5146007Z             {
2026-06-05T00:45:23.5146745Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.5147329Z               "line": 270
2026-06-05T00:45:23.5147748Z             },
2026-06-05T00:45:23.5148158Z             {
2026-06-05T00:45:23.5148885Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.5149393Z               "line": 281
2026-06-05T00:45:23.5149803Z             }
2026-06-05T00:45:23.5150223Z           ]
2026-06-05T00:45:23.5150623Z         }
2026-06-05T00:45:23.5151035Z       }
2026-06-05T00:45:23.5151433Z     },
2026-06-05T00:45:23.5151842Z     {
2026-06-05T00:45:23.5152296Z       "id": "REQ-SEC-1",
2026-06-05T00:45:23.5154849Z       "title": "Per-endpoint access whitelist: origin-node gate, stateful-firewall (reply/outbound exempt), node-now/user-later, outer gate before grants",
2026-06-05T00:45:23.5155332Z       "requiredStages": [
2026-06-05T00:45:23.5155750Z         "impl",
2026-06-05T00:45:23.5156204Z         "unit"
2026-06-05T00:45:23.5156619Z       ],
2026-06-05T00:45:23.5157075Z       "stages": {
2026-06-05T00:45:23.5157518Z         "doc": {
2026-06-05T00:45:23.5162032Z           "complete": false,
2026-06-05T00:45:23.5162652Z           "evidence": []
2026-06-05T00:45:23.5163067Z         },
2026-06-05T00:45:23.5163502Z         "impl": {
2026-06-05T00:45:23.5163966Z           "complete": true,
2026-06-05T00:45:23.5164420Z           "evidence": [
2026-06-05T00:45:23.5164840Z             {
2026-06-05T00:45:23.5165485Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-05T00:45:23.5165934Z               "line": 84
2026-06-05T00:45:23.5166343Z             },
2026-06-05T00:45:23.5166757Z             {
2026-06-05T00:45:23.5167383Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-05T00:45:23.5167836Z               "line": 114
2026-06-05T00:45:23.5168253Z             },
2026-06-05T00:45:23.5168655Z             {
2026-06-05T00:45:23.5169357Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-05T00:45:23.5169849Z               "line": 128
2026-06-05T00:45:23.5170271Z             },
2026-06-05T00:45:23.5170691Z             {
2026-06-05T00:45:23.5171312Z               "path": "crates/spt-store/src/access.rs",
2026-06-05T00:45:23.5171756Z               "line": 108
2026-06-05T00:45:23.5172168Z             },
2026-06-05T00:45:23.5172588Z             {
2026-06-05T00:45:23.5173188Z               "path": "crates/spt-store/src/access.rs",
2026-06-05T00:45:23.5173633Z               "line": 129
2026-06-05T00:45:23.5174040Z             },
2026-06-05T00:45:23.5174453Z             {
2026-06-05T00:45:23.5175065Z               "path": "crates/spt-store/src/access.rs",
2026-06-05T00:45:23.5175499Z               "line": 142
2026-06-05T00:45:23.5175912Z             },
2026-06-05T00:45:23.5176313Z             {
2026-06-05T00:45:23.5176920Z               "path": "crates/spt-store/src/access.rs",
2026-06-05T00:45:23.5177357Z               "line": 208
2026-06-05T00:45:23.5177790Z             },
2026-06-05T00:45:23.5178209Z             {
2026-06-05T00:45:23.5178817Z               "path": "crates/spt-store/src/access.rs",
2026-06-05T00:45:23.5179316Z               "line": 234
2026-06-05T00:45:23.5179728Z             },
2026-06-05T00:45:23.5180146Z             {
2026-06-05T00:45:23.5180679Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5181140Z               "line": 1378
2026-06-05T00:45:23.5181557Z             }
2026-06-05T00:45:23.5181962Z           ]
2026-06-05T00:45:23.5182373Z         },
2026-06-05T00:45:23.5182784Z         "int": {
2026-06-05T00:45:23.5183254Z           "complete": false,
2026-06-05T00:45:23.5183703Z           "evidence": []
2026-06-05T00:45:23.5184130Z         },
2026-06-05T00:45:23.5184550Z         "unit": {
2026-06-05T00:45:23.5185002Z           "complete": true,
2026-06-05T00:45:23.5185446Z           "evidence": [
2026-06-05T00:45:23.5185857Z             {
2026-06-05T00:45:23.5186491Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-05T00:45:23.5187277Z               "line": 140
2026-06-05T00:45:23.5187687Z             },
2026-06-05T00:45:23.5188237Z             {
2026-06-05T00:45:23.5188870Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-05T00:45:23.5189369Z               "line": 186
2026-06-05T00:45:23.5189787Z             },
2026-06-05T00:45:23.5190199Z             {
2026-06-05T00:45:23.5190827Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-05T00:45:23.5191263Z               "line": 218
2026-06-05T00:45:23.5191686Z             },
2026-06-05T00:45:23.5192092Z             {
2026-06-05T00:45:23.5192744Z               "path": "crates/spt-daemon/tests/access.rs",
2026-06-05T00:45:23.5193179Z               "line": 128
2026-06-05T00:45:23.5193597Z             },
2026-06-05T00:45:23.5194159Z             {
2026-06-05T00:45:23.5194954Z               "path": "crates/spt-store/src/access.rs",
2026-06-05T00:45:23.5195407Z               "line": 248
2026-06-05T00:45:23.5195811Z             },
2026-06-05T00:45:23.5196247Z             {
2026-06-05T00:45:23.5196852Z               "path": "crates/spt-store/src/access.rs",
2026-06-05T00:45:23.5197319Z               "line": 275
2026-06-05T00:45:23.5197744Z             },
2026-06-05T00:45:23.5198144Z             {
2026-06-05T00:45:23.5198758Z               "path": "crates/spt-store/src/access.rs",
2026-06-05T00:45:23.5199240Z               "line": 299
2026-06-05T00:45:23.5199668Z             },
2026-06-05T00:45:23.5200073Z             {
2026-06-05T00:45:23.5200683Z               "path": "crates/spt-store/src/access.rs",
2026-06-05T00:45:23.5201132Z               "line": 310
2026-06-05T00:45:23.5201543Z             },
2026-06-05T00:45:23.5201958Z             {
2026-06-05T00:45:23.5202566Z               "path": "crates/spt-store/src/access.rs",
2026-06-05T00:45:23.5203015Z               "line": 334
2026-06-05T00:45:23.5203425Z             },
2026-06-05T00:45:23.5203844Z             {
2026-06-05T00:45:23.5204464Z               "path": "crates/spt-store/src/access.rs",
2026-06-05T00:45:23.5204920Z               "line": 350
2026-06-05T00:45:23.5205340Z             },
2026-06-05T00:45:23.5205752Z             {
2026-06-05T00:45:23.5206294Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5206734Z               "line": 2499
2026-06-05T00:45:23.5207147Z             }
2026-06-05T00:45:23.5207557Z           ]
2026-06-05T00:45:23.5207962Z         }
2026-06-05T00:45:23.5208373Z       }
2026-06-05T00:45:23.5208764Z     },
2026-06-05T00:45:23.5209217Z     {
2026-06-05T00:45:23.5209688Z       "id": "REQ-SHELL-1",
2026-06-05T00:45:23.5216529Z       "title": "Shell hosting machinery: shell perch under the owner (type/owner/adapter_name/status/alias), broker-launched binary + api bind local-link handshake, the three channels (command durable, text+file durable + progress-queryable, sensory REST-only never spooled + dropped-unless-owner-live), owner exclusivity (CONTEXT Shell model)",
2026-06-05T00:45:23.5217154Z       "requiredStages": [
2026-06-05T00:45:23.5217648Z         "impl",
2026-06-05T00:45:23.5218118Z         "unit"
2026-06-05T00:45:23.5218552Z       ],
2026-06-05T00:45:23.5219029Z       "stages": {
2026-06-05T00:45:23.5219608Z         "doc": {
2026-06-05T00:45:23.5220256Z           "complete": false,
2026-06-05T00:45:23.5220722Z           "evidence": []
2026-06-05T00:45:23.5221142Z         },
2026-06-05T00:45:23.5221581Z         "impl": {
2026-06-05T00:45:23.5222043Z           "complete": true,
2026-06-05T00:45:23.5222504Z           "evidence": [
2026-06-05T00:45:23.5222945Z             {
2026-06-05T00:45:23.5223638Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-05T00:45:23.5224134Z               "line": 27
2026-06-05T00:45:23.5224571Z             },
2026-06-05T00:45:23.5225006Z             {
2026-06-05T00:45:23.5225696Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-05T00:45:23.5226175Z               "line": 52
2026-06-05T00:45:23.5226619Z             },
2026-06-05T00:45:23.5227050Z             {
2026-06-05T00:45:23.5228074Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-05T00:45:23.5228527Z               "line": 128
2026-06-05T00:45:23.5229148Z             },
2026-06-05T00:45:23.5229986Z             {
2026-06-05T00:45:23.5230680Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-05T00:45:23.5231151Z               "line": 160
2026-06-05T00:45:23.5231573Z             },
2026-06-05T00:45:23.5231997Z             {
2026-06-05T00:45:23.5232661Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5233210Z               "line": 22
2026-06-05T00:45:23.5233623Z             },
2026-06-05T00:45:23.5234042Z             {
2026-06-05T00:45:23.5234706Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5235146Z               "line": 65
2026-06-05T00:45:23.5235572Z             },
2026-06-05T00:45:23.5235990Z             {
2026-06-05T00:45:23.5236656Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5237155Z               "line": 76
2026-06-05T00:45:23.5237594Z             },
2026-06-05T00:45:23.5238045Z             {
2026-06-05T00:45:23.5238764Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5239305Z               "line": 140
2026-06-05T00:45:23.5240044Z             },
2026-06-05T00:45:23.5240505Z             {
2026-06-05T00:45:23.5241197Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5241662Z               "line": 199
2026-06-05T00:45:23.5252032Z             },
2026-06-05T00:45:23.5252663Z             {
2026-06-05T00:45:23.5253430Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5253945Z               "line": 236
2026-06-05T00:45:23.5254454Z             },
2026-06-05T00:45:23.5254943Z             {
2026-06-05T00:45:23.5255811Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5256469Z               "line": 257
2026-06-05T00:45:23.5256967Z             },
2026-06-05T00:45:23.5257465Z             {
2026-06-05T00:45:23.5258383Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5258844Z               "line": 270
2026-06-05T00:45:23.5259349Z             },
2026-06-05T00:45:23.5259769Z             {
2026-06-05T00:45:23.5260380Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.5261149Z               "line": 185
2026-06-05T00:45:23.5261880Z             },
2026-06-05T00:45:23.5262301Z             {
2026-06-05T00:45:23.5262925Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.5263380Z               "line": 201
2026-06-05T00:45:23.5263792Z             },
2026-06-05T00:45:23.5264208Z             {
2026-06-05T00:45:23.5264843Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-05T00:45:23.5265289Z               "line": 41
2026-06-05T00:45:23.5265695Z             },
2026-06-05T00:45:23.5266115Z             {
2026-06-05T00:45:23.5266754Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-05T00:45:23.5267208Z               "line": 204
2026-06-05T00:45:23.5267628Z             },
2026-06-05T00:45:23.5268029Z             {
2026-06-05T00:45:23.5268658Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-05T00:45:23.5269100Z               "line": 142
2026-06-05T00:45:23.5269567Z             },
2026-06-05T00:45:23.5269985Z             {
2026-06-05T00:45:23.5270549Z               "path": "crates/spt/src/api/mod.rs",
2026-06-05T00:45:23.5271003Z               "line": 272
2026-06-05T00:45:23.5271414Z             },
2026-06-05T00:45:23.5271830Z             {
2026-06-05T00:45:23.5272390Z               "path": "crates/spt/src/api/mod.rs",
2026-06-05T00:45:23.5272838Z               "line": 303
2026-06-05T00:45:23.5273255Z             },
2026-06-05T00:45:23.5273663Z             {
2026-06-05T00:45:23.5274296Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.5274741Z               "line": 240
2026-06-05T00:45:23.5275171Z             },
2026-06-05T00:45:23.5275582Z             {
2026-06-05T00:45:23.5276552Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5277005Z               "line": 1858
2026-06-05T00:45:23.5277587Z             },
2026-06-05T00:45:23.5278008Z             {
2026-06-05T00:45:23.5278543Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5278991Z               "line": 1969
2026-06-05T00:45:23.5279452Z             },
2026-06-05T00:45:23.5279864Z             {
2026-06-05T00:45:23.5280417Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5280872Z               "line": 2001
2026-06-05T00:45:23.5281293Z             }
2026-06-05T00:45:23.5281706Z           ]
2026-06-05T00:45:23.5282120Z         },
2026-06-05T00:45:23.5282545Z         "int": {
2026-06-05T00:45:23.5283000Z           "complete": true,
2026-06-05T00:45:23.5283445Z           "evidence": [
2026-06-05T00:45:23.5283854Z             {
2026-06-05T00:45:23.5284540Z               "path": "crates/spt-daemon/tests/shellchan.rs",
2026-06-05T00:45:23.5284968Z               "line": 8
2026-06-05T00:45:23.5285400Z             },
2026-06-05T00:45:23.5285821Z             {
2026-06-05T00:45:23.5286493Z               "path": "crates/spt-daemon/tests/shellchan.rs",
2026-06-05T00:45:23.5286946Z               "line": 46
2026-06-05T00:45:23.5287355Z             },
2026-06-05T00:45:23.5287772Z             {
2026-06-05T00:45:23.5288365Z               "path": "crates/spt/tests/shell_e2e.rs",
2026-06-05T00:45:23.5288812Z               "line": 14
2026-06-05T00:45:23.5289267Z             }
2026-06-05T00:45:23.5289676Z           ]
2026-06-05T00:45:23.5290092Z         },
2026-06-05T00:45:23.5290511Z         "unit": {
2026-06-05T00:45:23.5290977Z           "complete": true,
2026-06-05T00:45:23.5291414Z           "evidence": [
2026-06-05T00:45:23.5291832Z             {
2026-06-05T00:45:23.5292491Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-05T00:45:23.5292930Z               "line": 227
2026-06-05T00:45:23.5293349Z             },
2026-06-05T00:45:23.5293756Z             {
2026-06-05T00:45:23.5294435Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-05T00:45:23.5294873Z               "line": 254
2026-06-05T00:45:23.5295300Z             },
2026-06-05T00:45:23.5295720Z             {
2026-06-05T00:45:23.5296368Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-05T00:45:23.5296823Z               "line": 278
2026-06-05T00:45:23.5297229Z             },
2026-06-05T00:45:23.5297646Z             {
2026-06-05T00:45:23.5298296Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5298741Z               "line": 479
2026-06-05T00:45:23.5299201Z             },
2026-06-05T00:45:23.5299612Z             {
2026-06-05T00:45:23.5300272Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5300709Z               "line": 543
2026-06-05T00:45:23.5301125Z             },
2026-06-05T00:45:23.5301528Z             {
2026-06-05T00:45:23.5302196Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5302659Z               "line": 672
2026-06-05T00:45:23.5303066Z             },
2026-06-05T00:45:23.5303483Z             {
2026-06-05T00:45:23.5304095Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.5304543Z               "line": 524
2026-06-05T00:45:23.5304951Z             },
2026-06-05T00:45:23.5305366Z             {
2026-06-05T00:45:23.5306019Z               "path": "crates/spt-store/src/shellinfo.rs",
2026-06-05T00:45:23.5306461Z               "line": 343
2026-06-05T00:45:23.5306876Z             },
2026-06-05T00:45:23.5307281Z             {
2026-06-05T00:45:23.5307835Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5308278Z               "line": 2714
2026-06-05T00:45:23.5308705Z             },
2026-06-05T00:45:23.5309114Z             {
2026-06-05T00:45:23.5309685Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5310134Z               "line": 2825
2026-06-05T00:45:23.5310538Z             },
2026-06-05T00:45:23.5310951Z             {
2026-06-05T00:45:23.5311676Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5312114Z               "line": 3138
2026-06-05T00:45:23.5312694Z             }
2026-06-05T00:45:23.5313111Z           ]
2026-06-05T00:45:23.5313524Z         }
2026-06-05T00:45:23.5313927Z       }
2026-06-05T00:45:23.5314340Z     },
2026-06-05T00:45:23.5314740Z     {
2026-06-05T00:45:23.5315207Z       "id": "REQ-SHELL-2",
2026-06-05T00:45:23.5324785Z       "title": "Shell sleep/wake: link-break always closes the binary (pre-close instruction + termination timeout), ephemeral teardown vs persistent offline/relink, wake_command wake-watcher (offline-only, exit-opcode supervision, exponential backoff + give-up), state-keyed wake resolution (dormant/suspended/active-elsewhere; no-reachable refuses — spawn-anywhere branch deferred), spt shutdown owner cascade + api owner-shutdown gated by can_shutdown (CONTEXT Shell sleep/wake)",
2026-06-05T00:45:23.5325293Z       "requiredStages": [
2026-06-05T00:45:23.5325728Z         "impl",
2026-06-05T00:45:23.5326184Z         "unit"
2026-06-05T00:45:23.5326589Z       ],
2026-06-05T00:45:23.5327022Z       "stages": {
2026-06-05T00:45:23.5327456Z         "doc": {
2026-06-05T00:45:23.5327929Z           "complete": false,
2026-06-05T00:45:23.5328380Z           "evidence": []
2026-06-05T00:45:23.5328794Z         },
2026-06-05T00:45:23.5329255Z         "impl": {
2026-06-05T00:45:23.5329716Z           "complete": true,
2026-06-05T00:45:23.5330166Z           "evidence": [
2026-06-05T00:45:23.5330588Z             {
2026-06-05T00:45:23.5331293Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.5331735Z               "line": 291
2026-06-05T00:45:23.5332166Z             },
2026-06-05T00:45:23.5332586Z             {
2026-06-05T00:45:23.5333225Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.5333679Z               "line": 338
2026-06-05T00:45:23.5334088Z             },
2026-06-05T00:45:23.5334509Z             {
2026-06-05T00:45:23.5335184Z               "path": "crates/spt-daemon/src/shellchan.rs",
2026-06-05T00:45:23.5335642Z               "line": 111
2026-06-05T00:45:23.5336076Z             },
2026-06-05T00:45:23.5336482Z             {
2026-06-05T00:45:23.5337138Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5337582Z               "line": 343
2026-06-05T00:45:23.5338007Z             },
2026-06-05T00:45:23.5338424Z             {
2026-06-05T00:45:23.5339092Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5339588Z               "line": 427
2026-06-05T00:45:23.5340001Z             },
2026-06-05T00:45:23.5346228Z             {
2026-06-05T00:45:23.5347051Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5347704Z               "line": 1908
2026-06-05T00:45:23.5348281Z             },
2026-06-05T00:45:23.5349030Z             {
2026-06-05T00:45:23.5349705Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5350316Z               "line": 2084
2026-06-05T00:45:23.5350790Z             }
2026-06-05T00:45:23.5351204Z           ]
2026-06-05T00:45:23.5351623Z         },
2026-06-05T00:45:23.5352058Z         "int": {
2026-06-05T00:45:23.5352529Z           "complete": false,
2026-06-05T00:45:23.5352984Z           "evidence": []
2026-06-05T00:45:23.5353388Z         },
2026-06-05T00:45:23.5353809Z         "unit": {
2026-06-05T00:45:23.5354266Z           "complete": true,
2026-06-05T00:45:23.5354715Z           "evidence": [
2026-06-05T00:45:23.5355121Z             {
2026-06-05T00:45:23.5355775Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-05T00:45:23.5356221Z               "line": 652
2026-06-05T00:45:23.5356626Z             },
2026-06-05T00:45:23.5357042Z             {
2026-06-05T00:45:23.5357684Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5358132Z               "line": 574
2026-06-05T00:45:23.5358535Z             },
2026-06-05T00:45:23.5358948Z             {
2026-06-05T00:45:23.5360109Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5360967Z               "line": 614
2026-06-05T00:45:23.5361561Z             },
2026-06-05T00:45:23.5362127Z             {
2026-06-05T00:45:23.5362794Z               "path": "crates/spt-daemon/src/shellhost.rs",
2026-06-05T00:45:23.5363245Z               "line": 637
2026-06-05T00:45:23.5363652Z             },
2026-06-05T00:45:23.5364067Z             {
2026-06-05T00:45:23.5364596Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5365047Z               "line": 2767
2026-06-05T00:45:23.5365452Z             }
2026-06-05T00:45:23.5365865Z           ]
2026-06-05T00:45:23.5366279Z         }
2026-06-05T00:45:23.5366682Z       }
2026-06-05T00:45:23.5367093Z     },
2026-06-05T00:45:23.5367490Z     {
2026-06-05T00:45:23.5367949Z       "id": "REQ-START-1",
2026-06-05T00:45:23.5369064Z       "title": "Adapters never resolve SPT_HOME; binary on PATH; api bridging only",
2026-06-05T00:45:23.5369780Z       "requiredStages": [
2026-06-05T00:45:23.5370411Z         "impl",
2026-06-05T00:45:23.5371261Z         "unit"
2026-06-05T00:45:23.5371723Z       ],
2026-06-05T00:45:23.5372316Z       "stages": {
2026-06-05T00:45:23.5372747Z         "doc": {
2026-06-05T00:45:23.5373204Z           "complete": false,
2026-06-05T00:45:23.5373651Z           "evidence": []
2026-06-05T00:45:23.5374059Z         },
2026-06-05T00:45:23.5374492Z         "impl": {
2026-06-05T00:45:23.5374960Z           "complete": true,
2026-06-05T00:45:23.5375842Z           "evidence": [
2026-06-05T00:45:23.5376288Z             {
2026-06-05T00:45:23.5377055Z               "path": "crates/spt-store/src/seed.rs",
2026-06-05T00:45:23.5377492Z               "line": 16
2026-06-05T00:45:23.5377910Z             }
2026-06-05T00:45:23.5378311Z           ]
2026-06-05T00:45:23.5378723Z         },
2026-06-05T00:45:23.5379137Z         "int": {
2026-06-05T00:45:23.5379662Z           "complete": false,
2026-06-05T00:45:23.5380109Z           "evidence": []
2026-06-05T00:45:23.5380527Z         },
2026-06-05T00:45:23.5380952Z         "unit": {
2026-06-05T00:45:23.5381415Z           "complete": true,
2026-06-05T00:45:23.5381862Z           "evidence": [
2026-06-05T00:45:23.5382276Z             {
2026-06-05T00:45:23.5382879Z               "path": "crates/spt-store/src/seed.rs",
2026-06-05T00:45:23.5383309Z               "line": 43
2026-06-05T00:45:23.5383735Z             },
2026-06-05T00:45:23.5384137Z             {
2026-06-05T00:45:23.5384731Z               "path": "crates/spt-store/src/seed.rs",
2026-06-05T00:45:23.5385170Z               "line": 59
2026-06-05T00:45:23.5385573Z             }
2026-06-05T00:45:23.5385984Z           ]
2026-06-05T00:45:23.5386386Z         }
2026-06-05T00:45:23.5386797Z       }
2026-06-05T00:45:23.5387192Z     },
2026-06-05T00:45:23.5387602Z     {
2026-06-05T00:45:23.5388366Z       "id": "REQ-START-2",
2026-06-05T00:45:23.5389384Z       "title": "Harness-hosted startup: api seed then listen",
2026-06-05T00:45:23.5390057Z       "requiredStages": [
2026-06-05T00:45:23.5390468Z         "impl",
2026-06-05T00:45:23.5390913Z         "unit",
2026-06-05T00:45:23.5391325Z         "int"
2026-06-05T00:45:23.5391740Z       ],
2026-06-05T00:45:23.5392185Z       "stages": {
2026-06-05T00:45:23.5392598Z         "doc": {
2026-06-05T00:45:23.5393070Z           "complete": false,
2026-06-05T00:45:23.5393510Z           "evidence": []
2026-06-05T00:45:23.5393925Z         },
2026-06-05T00:45:23.5394343Z         "impl": {
2026-06-05T00:45:23.5394816Z           "complete": true,
2026-06-05T00:45:23.5395267Z           "evidence": [
2026-06-05T00:45:23.5395679Z             {
2026-06-05T00:45:23.5396294Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.5396731Z               "line": 16
2026-06-05T00:45:23.5397149Z             },
2026-06-05T00:45:23.5397545Z             {
2026-06-05T00:45:23.5398152Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.5398595Z               "line": 97
2026-06-05T00:45:23.5399003Z             },
2026-06-05T00:45:23.5399474Z             {
2026-06-05T00:45:23.5400268Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.5400715Z               "line": 203
2026-06-05T00:45:23.5401254Z             }
2026-06-05T00:45:23.5401673Z           ]
2026-06-05T00:45:23.5402093Z         },
2026-06-05T00:45:23.5402508Z         "int": {
2026-06-05T00:45:23.5402979Z           "complete": true,
2026-06-05T00:45:23.5403420Z           "evidence": [
2026-06-05T00:45:23.5403836Z             {
2026-06-05T00:45:23.5404473Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-05T00:45:23.5404919Z               "line": 150
2026-06-05T00:45:23.5405334Z             }
2026-06-05T00:45:23.5405739Z           ]
2026-06-05T00:45:23.5406151Z         },
2026-06-05T00:45:23.5406565Z         "unit": {
2026-06-05T00:45:23.5407028Z           "complete": true,
2026-06-05T00:45:23.5407467Z           "evidence": [
2026-06-05T00:45:23.5407883Z             {
2026-06-05T00:45:23.5408499Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.5408954Z               "line": 411
2026-06-05T00:45:23.5409419Z             },
2026-06-05T00:45:23.5409829Z             {
2026-06-05T00:45:23.5410452Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.5410904Z               "line": 444
2026-06-05T00:45:23.5411316Z             }
2026-06-05T00:45:23.5411732Z           ]
2026-06-05T00:45:23.5412136Z         }
2026-06-05T00:45:23.5412542Z       }
2026-06-05T00:45:23.5412933Z     },
2026-06-05T00:45:23.5413334Z     {
2026-06-05T00:45:23.5413789Z       "id": "REQ-START-3",
2026-06-05T00:45:23.5414778Z       "title": "spt-hosted startup: spawn-session then api bind (no file)",
2026-06-05T00:45:23.5415258Z       "requiredStages": [
2026-06-05T00:45:23.5415681Z         "impl",
2026-06-05T00:45:23.5416104Z         "unit",
2026-06-05T00:45:23.5416517Z         "int"
2026-06-05T00:45:23.5416934Z       ],
2026-06-05T00:45:23.5417358Z       "stages": {
2026-06-05T00:45:23.5417786Z         "doc": {
2026-06-05T00:45:23.5418253Z           "complete": false,
2026-06-05T00:45:23.5418704Z           "evidence": []
2026-06-05T00:45:23.5419114Z         },
2026-06-05T00:45:23.5419585Z         "impl": {
2026-06-05T00:45:23.5420053Z           "complete": true,
2026-06-05T00:45:23.5420489Z           "evidence": [
2026-06-05T00:45:23.5420914Z             {
2026-06-05T00:45:23.5421559Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-05T00:45:23.5421989Z               "line": 23
2026-06-05T00:45:23.5422408Z             },
2026-06-05T00:45:23.5422814Z             {
2026-06-05T00:45:23.5423463Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-05T00:45:23.5423908Z               "line": 167
2026-06-05T00:45:23.5424332Z             },
2026-06-05T00:45:23.5424755Z             {
2026-06-05T00:45:23.5425402Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-05T00:45:23.5425858Z               "line": 180
2026-06-05T00:45:23.5431059Z             },
2026-06-05T00:45:23.5431646Z             {
2026-06-05T00:45:23.5432329Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.5432765Z               "line": 17
2026-06-05T00:45:23.5433205Z             },
2026-06-05T00:45:23.5433610Z             {
2026-06-05T00:45:23.5434219Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.5434656Z               "line": 43
2026-06-05T00:45:23.5435078Z             },
2026-06-05T00:45:23.5435495Z             {
2026-06-05T00:45:23.5436093Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.5436541Z               "line": 98
2026-06-05T00:45:23.5436946Z             }
2026-06-05T00:45:23.5437361Z           ]
2026-06-05T00:45:23.5437767Z         },
2026-06-05T00:45:23.5438190Z         "int": {
2026-06-05T00:45:23.5438651Z           "complete": true,
2026-06-05T00:45:23.5439088Z           "evidence": [
2026-06-05T00:45:23.5439575Z             {
2026-06-05T00:45:23.5440204Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-05T00:45:23.5440654Z               "line": 321
2026-06-05T00:45:23.5441341Z             }
2026-06-05T00:45:23.5441754Z           ]
2026-06-05T00:45:23.5442169Z         },
2026-06-05T00:45:23.5442718Z         "unit": {
2026-06-05T00:45:23.5443188Z           "complete": true,
2026-06-05T00:45:23.5443623Z           "evidence": [
2026-06-05T00:45:23.5444037Z             {
2026-06-05T00:45:23.5444668Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-05T00:45:23.5445118Z               "line": 245
2026-06-05T00:45:23.5445532Z             },
2026-06-05T00:45:23.5445943Z             {
2026-06-05T00:45:23.5446586Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-05T00:45:23.5447020Z               "line": 263
2026-06-05T00:45:23.5447432Z             },
2026-06-05T00:45:23.5447832Z             {
2026-06-05T00:45:23.5448477Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-05T00:45:23.5448930Z               "line": 273
2026-06-05T00:45:23.5449381Z             },
2026-06-05T00:45:23.5449801Z             {
2026-06-05T00:45:23.5450412Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.5450862Z               "line": 412
2026-06-05T00:45:23.5451283Z             },
2026-06-05T00:45:23.5451697Z             {
2026-06-05T00:45:23.5452303Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.5452739Z               "line": 445
2026-06-05T00:45:23.5453155Z             },
2026-06-05T00:45:23.5453556Z             {
2026-06-05T00:45:23.5454157Z               "path": "crates/spt/src/api/startup.rs",
2026-06-05T00:45:23.5454599Z               "line": 453
2026-06-05T00:45:23.5455015Z             }
2026-06-05T00:45:23.5455424Z           ]
2026-06-05T00:45:23.5455828Z         }
2026-06-05T00:45:23.5456243Z       }
2026-06-05T00:45:23.5456639Z     },
2026-06-05T00:45:23.5457043Z     {
2026-06-05T00:45:23.5457493Z       "id": "REQ-START-4",
2026-06-05T00:45:23.5458255Z       "title": "Adapter-injected env aliases (SPT/OWL/LIVE)",
2026-06-05T00:45:23.5458731Z       "requiredStages": [
2026-06-05T00:45:23.5459193Z         "impl",
2026-06-05T00:45:23.5459634Z         "unit"
2026-06-05T00:45:23.5460223Z       ],
2026-06-05T00:45:23.5460698Z       "stages": {
2026-06-05T00:45:23.5461144Z         "doc": {
2026-06-05T00:45:23.5461648Z           "complete": false,
2026-06-05T00:45:23.5462137Z           "evidence": []
2026-06-05T00:45:23.5462582Z         },
2026-06-05T00:45:23.5463043Z         "impl": {
2026-06-05T00:45:23.5463538Z           "complete": true,
2026-06-05T00:45:23.5464016Z           "evidence": [
2026-06-05T00:45:23.5464462Z             {
2026-06-05T00:45:23.5465259Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.5465708Z               "line": 309
2026-06-05T00:45:23.5466114Z             }
2026-06-05T00:45:23.5466526Z           ]
2026-06-05T00:45:23.5466930Z         },
2026-06-05T00:45:23.5467352Z         "int": {
2026-06-05T00:45:23.5467809Z           "complete": false,
2026-06-05T00:45:23.5468267Z           "evidence": []
2026-06-05T00:45:23.5468680Z         },
2026-06-05T00:45:23.5469122Z         "unit": {
2026-06-05T00:45:23.5469661Z           "complete": true,
2026-06-05T00:45:23.5470106Z           "evidence": [
2026-06-05T00:45:23.5470536Z             {
2026-06-05T00:45:23.5471175Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-05T00:45:23.5471621Z               "line": 540
2026-06-05T00:45:23.5472040Z             }
2026-06-05T00:45:23.5472442Z           ]
2026-06-05T00:45:23.5472859Z         }
2026-06-05T00:45:23.5473263Z       }
2026-06-05T00:45:23.5473669Z     },
2026-06-05T00:45:23.5474064Z     {
2026-06-05T00:45:23.5474534Z       "id": "REQ-STORE-1",
2026-06-05T00:45:23.5480440Z       "title": "spt-store::BranchStore (git branch as versioned KV; commit=checkpoint/tip=resume, atomic multi-key, merge-native sync) is the substrate for coarse/durable/audited state (context, registry snapshot+distribution, daemon checkpoint); hot paths (B5 fsync journal) + indexed queries (SQLite spool) excluded (ADR-0011)",
2026-06-05T00:45:23.5480934Z       "requiredStages": [
2026-06-05T00:45:23.5481564Z         "impl",
2026-06-05T00:45:23.5481980Z         "unit"
2026-06-05T00:45:23.5482408Z       ],
2026-06-05T00:45:23.5483028Z       "stages": {
2026-06-05T00:45:23.5483450Z         "doc": {
2026-06-05T00:45:23.5483916Z           "complete": false,
2026-06-05T00:45:23.5484358Z           "evidence": []
2026-06-05T00:45:23.5484771Z         },
2026-06-05T00:45:23.5485189Z         "impl": {
2026-06-05T00:45:23.5485656Z           "complete": true,
2026-06-05T00:45:23.5486100Z           "evidence": [
2026-06-05T00:45:23.5486500Z             {
2026-06-05T00:45:23.5487189Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.5487620Z               "line": 23
2026-06-05T00:45:23.5488034Z             },
2026-06-05T00:45:23.5488434Z             {
2026-06-05T00:45:23.5489119Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.5489607Z               "line": 46
2026-06-05T00:45:23.5490021Z             },
2026-06-05T00:45:23.5490452Z             {
2026-06-05T00:45:23.5491116Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.5491577Z               "line": 88
2026-06-05T00:45:23.5491983Z             },
2026-06-05T00:45:23.5492396Z             {
2026-06-05T00:45:23.5493068Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.5493507Z               "line": 109
2026-06-05T00:45:23.5493925Z             },
2026-06-05T00:45:23.5494335Z             {
2026-06-05T00:45:23.5495006Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.5495455Z               "line": 152
2026-06-05T00:45:23.5495862Z             },
2026-06-05T00:45:23.5496271Z             {
2026-06-05T00:45:23.5496934Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.5497377Z               "line": 165
2026-06-05T00:45:23.5497782Z             },
2026-06-05T00:45:23.5498194Z             {
2026-06-05T00:45:23.5498867Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.5499359Z               "line": 353
2026-06-05T00:45:23.5499925Z             },
2026-06-05T00:45:23.5500341Z             {
2026-06-05T00:45:23.5501029Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.5501462Z               "line": 25
2026-06-05T00:45:23.5501880Z             },
2026-06-05T00:45:23.5502302Z             {
2026-06-05T00:45:23.5502974Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.5503422Z               "line": 101
2026-06-05T00:45:23.5503831Z             },
2026-06-05T00:45:23.5504243Z             {
2026-06-05T00:45:23.5504919Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.5505372Z               "line": 126
2026-06-05T00:45:23.5505788Z             },
2026-06-05T00:45:23.5506196Z             {
2026-06-05T00:45:23.5506884Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.5507316Z               "line": 140
2026-06-05T00:45:23.5507752Z             },
2026-06-05T00:45:23.5508152Z             {
2026-06-05T00:45:23.5508843Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.5509338Z               "line": 154
2026-06-05T00:45:23.5509760Z             },
2026-06-05T00:45:23.5510171Z             {
2026-06-05T00:45:23.5510859Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.5511307Z               "line": 163
2026-06-05T00:45:23.5511709Z             },
2026-06-05T00:45:23.5512122Z             {
2026-06-05T00:45:23.5512770Z               "path": "crates/spt-store/src/project.rs",
2026-06-05T00:45:23.5513208Z               "line": 16
2026-06-05T00:45:23.5513626Z             },
2026-06-05T00:45:23.5518459Z             {
2026-06-05T00:45:23.5519339Z               "path": "crates/spt-store/src/project.rs",
2026-06-05T00:45:23.5519807Z               "line": 63
2026-06-05T00:45:23.5520227Z             }
2026-06-05T00:45:23.5520644Z           ]
2026-06-05T00:45:23.5521043Z         },
2026-06-05T00:45:23.5521730Z         "int": {
2026-06-05T00:45:23.5522191Z           "complete": false,
2026-06-05T00:45:23.5522640Z           "evidence": []
2026-06-05T00:45:23.5523194Z         },
2026-06-05T00:45:23.5523629Z         "unit": {
2026-06-05T00:45:23.5524092Z           "complete": true,
2026-06-05T00:45:23.5524534Z           "evidence": [
2026-06-05T00:45:23.5524950Z             {
2026-06-05T00:45:23.5525619Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.5526072Z               "line": 468
2026-06-05T00:45:23.5526491Z             },
2026-06-05T00:45:23.5526898Z             {
2026-06-05T00:45:23.5527577Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.5528018Z               "line": 478
2026-06-05T00:45:23.5528443Z             },
2026-06-05T00:45:23.5528849Z             {
2026-06-05T00:45:23.5529577Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.5530034Z               "line": 498
2026-06-05T00:45:23.5530468Z             },
2026-06-05T00:45:23.5530882Z             {
2026-06-05T00:45:23.5531547Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.5532003Z               "line": 514
2026-06-05T00:45:23.5532408Z             },
2026-06-05T00:45:23.5532825Z             {
2026-06-05T00:45:23.5533506Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-05T00:45:23.5533946Z               "line": 535
2026-06-05T00:45:23.5534359Z             },
2026-06-05T00:45:23.5534761Z             {
2026-06-05T00:45:23.5535445Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.5535880Z               "line": 427
2026-06-05T00:45:23.5536302Z             },
2026-06-05T00:45:23.5536714Z             {
2026-06-05T00:45:23.5537390Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-05T00:45:23.5537838Z               "line": 457
2026-06-05T00:45:23.5538243Z             },
2026-06-05T00:45:23.5538651Z             {
2026-06-05T00:45:23.5539320Z               "path": "crates/spt-store/src/project.rs",
2026-06-05T00:45:23.5539776Z               "line": 116
2026-06-05T00:45:23.5540201Z             },
2026-06-05T00:45:23.5540603Z             {
2026-06-05T00:45:23.5541238Z               "path": "crates/spt-store/src/project.rs",
2026-06-05T00:45:23.5541677Z               "line": 124
2026-06-05T00:45:23.5542095Z             }
2026-06-05T00:45:23.5542495Z           ]
2026-06-05T00:45:23.5542900Z         }
2026-06-05T00:45:23.5543305Z       }
2026-06-05T00:45:23.5543702Z     },
2026-06-05T00:45:23.5544105Z     {
2026-06-05T00:45:23.5544548Z       "id": "REQ-TERM-1",
2026-06-05T00:45:23.5545535Z       "title": "Process-supervisor terminal wrapper hosting broker PTYs",
2026-06-05T00:45:23.5545995Z       "requiredStages": [
2026-06-05T00:45:23.5546418Z         "impl",
2026-06-05T00:45:23.5546834Z         "unit"
2026-06-05T00:45:23.5547226Z       ],
2026-06-05T00:45:23.5547651Z       "stages": {
2026-06-05T00:45:23.5548060Z         "doc": {
2026-06-05T00:45:23.5548539Z           "complete": false,
2026-06-05T00:45:23.5548977Z           "evidence": []
2026-06-05T00:45:23.5549532Z         },
2026-06-05T00:45:23.5549994Z         "impl": {
2026-06-05T00:45:23.5550445Z           "complete": true,
2026-06-05T00:45:23.5550888Z           "evidence": [
2026-06-05T00:45:23.5551288Z             {
2026-06-05T00:45:23.5551885Z               "path": "crates/spt-term/src/pty.rs",
2026-06-05T00:45:23.5552322Z               "line": 61
2026-06-05T00:45:23.5552733Z             },
2026-06-05T00:45:23.5553144Z             {
2026-06-05T00:45:23.5553704Z               "path": "crates/spt-term/src/pty.rs",
2026-06-05T00:45:23.5554148Z               "line": 169
2026-06-05T00:45:23.5554548Z             },
2026-06-05T00:45:23.5554958Z             {
2026-06-05T00:45:23.5555554Z               "path": "crates/spt-term/src/surface.rs",
2026-06-05T00:45:23.5555996Z               "line": 95
2026-06-05T00:45:23.5556408Z             }
2026-06-05T00:45:23.5556806Z           ]
2026-06-05T00:45:23.5557404Z         },
2026-06-05T00:45:23.5557819Z         "int": {
2026-06-05T00:45:23.5558292Z           "complete": false,
2026-06-05T00:45:23.5558869Z           "evidence": []
2026-06-05T00:45:23.5559332Z         },
2026-06-05T00:45:23.5559766Z         "unit": {
2026-06-05T00:45:23.5560216Z           "complete": true,
2026-06-05T00:45:23.5560655Z           "evidence": [
2026-06-05T00:45:23.5561051Z             {
2026-06-05T00:45:23.5561688Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-05T00:45:23.5562117Z               "line": 28
2026-06-05T00:45:23.5562530Z             },
2026-06-05T00:45:23.5562937Z             {
2026-06-05T00:45:23.5563559Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-05T00:45:23.5563995Z               "line": 60
2026-06-05T00:45:23.5564397Z             }
2026-06-05T00:45:23.5564800Z           ]
2026-06-05T00:45:23.5565196Z         }
2026-06-05T00:45:23.5565607Z       }
2026-06-05T00:45:23.5566010Z     },
2026-06-05T00:45:23.5566397Z     {
2026-06-05T00:45:23.5566864Z       "id": "REQ-TERM-2",
2026-06-05T00:45:23.5567894Z       "title": "session-surface abstraction; send-keys + send-line injection",
2026-06-05T00:45:23.5568386Z       "requiredStages": [
2026-06-05T00:45:23.5568787Z         "impl",
2026-06-05T00:45:23.5569239Z         "unit"
2026-06-05T00:45:23.5569650Z       ],
2026-06-05T00:45:23.5570063Z       "stages": {
2026-06-05T00:45:23.5570477Z         "doc": {
2026-06-05T00:45:23.5570931Z           "complete": false,
2026-06-05T00:45:23.5571379Z           "evidence": []
2026-06-05T00:45:23.5571782Z         },
2026-06-05T00:45:23.5572211Z         "impl": {
2026-06-05T00:45:23.5572669Z           "complete": true,
2026-06-05T00:45:23.5573099Z           "evidence": [
2026-06-05T00:45:23.5573506Z             {
2026-06-05T00:45:23.5574112Z               "path": "crates/spt-term/src/surface.rs",
2026-06-05T00:45:23.5574556Z               "line": 112
2026-06-05T00:45:23.5574958Z             },
2026-06-05T00:45:23.5575367Z             {
2026-06-05T00:45:23.5576000Z               "path": "crates/spt-term/src/surface.rs",
2026-06-05T00:45:23.5576440Z               "line": 122
2026-06-05T00:45:23.5576868Z             }
2026-06-05T00:45:23.5577275Z           ]
2026-06-05T00:45:23.5577685Z         },
2026-06-05T00:45:23.5578093Z         "int": {
2026-06-05T00:45:23.5578565Z           "complete": false,
2026-06-05T00:45:23.5579013Z           "evidence": []
2026-06-05T00:45:23.5579448Z         },
2026-06-05T00:45:23.5579873Z         "unit": {
2026-06-05T00:45:23.5580321Z           "complete": true,
2026-06-05T00:45:23.5580766Z           "evidence": [
2026-06-05T00:45:23.5581170Z             {
2026-06-05T00:45:23.5581796Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-05T00:45:23.5582236Z               "line": 46
2026-06-05T00:45:23.5582640Z             },
2026-06-05T00:45:23.5583056Z             {
2026-06-05T00:45:23.5583681Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-05T00:45:23.5584124Z               "line": 71
2026-06-05T00:45:23.5584542Z             }
2026-06-05T00:45:23.5584960Z           ]
2026-06-05T00:45:23.5585369Z         }
2026-06-05T00:45:23.5585782Z       }
2026-06-05T00:45:23.5586186Z     },
2026-06-05T00:45:23.5586576Z     {
2026-06-05T00:45:23.5587029Z       "id": "REQ-TERM-3",
2026-06-05T00:45:23.5587800Z       "title": "Byte-stream remote terminal streaming for v1",
2026-06-05T00:45:23.5588276Z       "requiredStages": [
2026-06-05T00:45:23.5588697Z         "impl",
2026-06-05T00:45:23.5589108Z         "unit"
2026-06-05T00:45:23.5589557Z       ],
2026-06-05T00:45:23.5589975Z       "stages": {
2026-06-05T00:45:23.5590388Z         "doc": {
2026-06-05T00:45:23.5590837Z           "complete": false,
2026-06-05T00:45:23.5591286Z           "evidence": []
2026-06-05T00:45:23.5591693Z         },
2026-06-05T00:45:23.5592103Z         "impl": {
2026-06-05T00:45:23.5592560Z           "complete": true,
2026-06-05T00:45:23.5592993Z           "evidence": [
2026-06-05T00:45:23.5593405Z             {
2026-06-05T00:45:23.5594183Z               "path": "crates/spt-term/src/stream.rs",
2026-06-05T00:45:23.5598360Z               "line": 71
2026-06-05T00:45:23.5599113Z             }
2026-06-05T00:45:23.5599614Z           ]
2026-06-05T00:45:23.5600038Z         },
2026-06-05T00:45:23.5600459Z         "int": {
2026-06-05T00:45:23.5600933Z           "complete": false,
2026-06-05T00:45:23.5601373Z           "evidence": []
2026-06-05T00:45:23.5601784Z         },
2026-06-05T00:45:23.5602205Z         "unit": {
2026-06-05T00:45:23.5602656Z           "complete": true,
2026-06-05T00:45:23.5603100Z           "evidence": [
2026-06-05T00:45:23.5603504Z             {
2026-06-05T00:45:23.5604147Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-05T00:45:23.5604577Z               "line": 37
2026-06-05T00:45:23.5604994Z             },
2026-06-05T00:45:23.5605406Z             {
2026-06-05T00:45:23.5606024Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-05T00:45:23.5606465Z               "line": 67
2026-06-05T00:45:23.5606886Z             }
2026-06-05T00:45:23.5607296Z           ]
2026-06-05T00:45:23.5607705Z         }
2026-06-05T00:45:23.5608110Z       }
2026-06-05T00:45:23.5608524Z     },
2026-06-05T00:45:23.5608915Z     {
2026-06-05T00:45:23.5609400Z       "id": "REQ-TERM-4",
2026-06-05T00:45:23.5611609Z       "title": "Live activity buffer (PTY digest): adapter-supplied patterns over broker PTY, spt digest pull + delta-stream, opt-in Path-B log",
2026-06-05T00:45:23.5612085Z       "requiredStages": [
2026-06-05T00:45:23.5612495Z         "impl",
2026-06-05T00:45:23.5612915Z         "unit",
2026-06-05T00:45:23.5613325Z         "int"
2026-06-05T00:45:23.5613718Z       ],
2026-06-05T00:45:23.5614146Z       "stages": {
2026-06-05T00:45:23.5614553Z         "doc": {
2026-06-05T00:45:23.5615011Z           "complete": true,
2026-06-05T00:45:23.5615443Z           "evidence": [
2026-06-05T00:45:23.5615849Z             {
2026-06-05T00:45:23.5616352Z               "path": "docs/MANIFEST.md",
2026-06-05T00:45:23.5616783Z               "line": 115
2026-06-05T00:45:23.5617215Z             }
2026-06-05T00:45:23.5617616Z           ]
2026-06-05T00:45:23.5618022Z         },
2026-06-05T00:45:23.5618448Z         "impl": {
2026-06-05T00:45:23.5618906Z           "complete": true,
2026-06-05T00:45:23.5619380Z           "evidence": [
2026-06-05T00:45:23.5619799Z             {
2026-06-05T00:45:23.5620611Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-05T00:45:23.5621143Z               "line": 463
2026-06-05T00:45:23.5621657Z             },
2026-06-05T00:45:23.5622247Z             {
2026-06-05T00:45:23.5622892Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-05T00:45:23.5623331Z               "line": 41
2026-06-05T00:45:23.5623737Z             },
2026-06-05T00:45:23.5624148Z             {
2026-06-05T00:45:23.5625093Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-05T00:45:23.5625554Z               "line": 91
2026-06-05T00:45:23.5625964Z             },
2026-06-05T00:45:23.5626380Z             {
2026-06-05T00:45:23.5627037Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-05T00:45:23.5627470Z               "line": 152
2026-06-05T00:45:23.5627896Z             },
2026-06-05T00:45:23.5628301Z             {
2026-06-05T00:45:23.5628929Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-05T00:45:23.5629423Z               "line": 212
2026-06-05T00:45:23.5629854Z             },
2026-06-05T00:45:23.5630267Z             {
2026-06-05T00:45:23.5630922Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-05T00:45:23.5631373Z               "line": 20
2026-06-05T00:45:23.5631778Z             },
2026-06-05T00:45:23.5632186Z             {
2026-06-05T00:45:23.5632834Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-05T00:45:23.5633285Z               "line": 212
2026-06-05T00:45:23.5633701Z             },
2026-06-05T00:45:23.5634103Z             {
2026-06-05T00:45:23.5634763Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-05T00:45:23.5635451Z               "line": 226
2026-06-05T00:45:23.5635867Z             },
2026-06-05T00:45:23.5636279Z             {
2026-06-05T00:45:23.5637115Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.5637565Z               "line": 585
2026-06-05T00:45:23.5637977Z             },
2026-06-05T00:45:23.5638386Z             {
2026-06-05T00:45:23.5638979Z               "path": "crates/spt-term/src/digest.rs",
2026-06-05T00:45:23.5639471Z               "line": 157
2026-06-05T00:45:23.5639897Z             },
2026-06-05T00:45:23.5640301Z             {
2026-06-05T00:45:23.5640898Z               "path": "crates/spt-term/src/digest.rs",
2026-06-05T00:45:23.5641332Z               "line": 199
2026-06-05T00:45:23.5641747Z             },
2026-06-05T00:45:23.5642146Z             {
2026-06-05T00:45:23.5642748Z               "path": "crates/spt-term/src/digest.rs",
2026-06-05T00:45:23.5643194Z               "line": 226
2026-06-05T00:45:23.5643599Z             },
2026-06-05T00:45:23.5644008Z             {
2026-06-05T00:45:23.5644565Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5645010Z               "line": 508
2026-06-05T00:45:23.5645434Z             }
2026-06-05T00:45:23.5645857Z           ]
2026-06-05T00:45:23.5646262Z         },
2026-06-05T00:45:23.5646673Z         "int": {
2026-06-05T00:45:23.5647137Z           "complete": true,
2026-06-05T00:45:23.5647573Z           "evidence": [
2026-06-05T00:45:23.5647982Z             {
2026-06-05T00:45:23.5648618Z               "path": "crates/spt-daemon/tests/digest.rs",
2026-06-05T00:45:23.5649060Z               "line": 18
2026-06-05T00:45:23.5649511Z             }
2026-06-05T00:45:23.5649912Z           ]
2026-06-05T00:45:23.5650316Z         },
2026-06-05T00:45:23.5650729Z         "unit": {
2026-06-05T00:45:23.5651187Z           "complete": true,
2026-06-05T00:45:23.5651624Z           "evidence": [
2026-06-05T00:45:23.5652036Z             {
2026-06-05T00:45:23.5652670Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-05T00:45:23.5653126Z               "line": 250
2026-06-05T00:45:23.5653540Z             },
2026-06-05T00:45:23.5653946Z             {
2026-06-05T00:45:23.5654589Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-05T00:45:23.5655032Z               "line": 263
2026-06-05T00:45:23.5655449Z             },
2026-06-05T00:45:23.5655860Z             {
2026-06-05T00:45:23.5656478Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-05T00:45:23.5656923Z               "line": 275
2026-06-05T00:45:23.5657333Z             },
2026-06-05T00:45:23.5657755Z             {
2026-06-05T00:45:23.5658384Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-05T00:45:23.5659198Z               "line": 290
2026-06-05T00:45:23.5659815Z             },
2026-06-05T00:45:23.5660301Z             {
2026-06-05T00:45:23.5661055Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-05T00:45:23.5661853Z               "line": 305
2026-06-05T00:45:23.5662440Z             },
2026-06-05T00:45:23.5662873Z             {
2026-06-05T00:45:23.5663520Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-05T00:45:23.5663969Z               "line": 327
2026-06-05T00:45:23.5664389Z             },
2026-06-05T00:45:23.5664800Z             {
2026-06-05T00:45:23.5665412Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-05T00:45:23.5665858Z               "line": 337
2026-06-05T00:45:23.5666285Z             },
2026-06-05T00:45:23.5666690Z             {
2026-06-05T00:45:23.5667324Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-05T00:45:23.5667763Z               "line": 364
2026-06-05T00:45:23.5668179Z             },
2026-06-05T00:45:23.5668581Z             {
2026-06-05T00:45:23.5669457Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-05T00:45:23.5670076Z               "line": 338
2026-06-05T00:45:23.5670485Z             },
2026-06-05T00:45:23.5670897Z             {
2026-06-05T00:45:23.5671544Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-05T00:45:23.5672192Z               "line": 350
2026-06-05T00:45:23.5672600Z             },
2026-06-05T00:45:23.5673017Z             {
2026-06-05T00:45:23.5673819Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-05T00:45:23.5674262Z               "line": 367
2026-06-05T00:45:23.5674822Z             },
2026-06-05T00:45:23.5675536Z             {
2026-06-05T00:45:23.5692150Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-05T00:45:23.5692697Z               "line": 378
2026-06-05T00:45:23.5693166Z             },
2026-06-05T00:45:23.5693581Z             {
2026-06-05T00:45:23.5694227Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.5694672Z               "line": 770
2026-06-05T00:45:23.5695076Z             },
2026-06-05T00:45:23.5700749Z             {
2026-06-05T00:45:23.5701513Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.5701966Z               "line": 777
2026-06-05T00:45:23.5702382Z             },
2026-06-05T00:45:23.5702855Z             {
2026-06-05T00:45:23.5703513Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.5703971Z               "line": 792
2026-06-05T00:45:23.5704387Z             },
2026-06-05T00:45:23.5704799Z             {
2026-06-05T00:45:23.5705413Z               "path": "crates/spt-term/src/digest.rs",
2026-06-05T00:45:23.5705856Z               "line": 381
2026-06-05T00:45:23.5706262Z             },
2026-06-05T00:45:23.5706676Z             {
2026-06-05T00:45:23.5707269Z               "path": "crates/spt-term/src/digest.rs",
2026-06-05T00:45:23.5707715Z               "line": 402
2026-06-05T00:45:23.5708117Z             },
2026-06-05T00:45:23.5708527Z             {
2026-06-05T00:45:23.5709122Z               "path": "crates/spt-term/src/digest.rs",
2026-06-05T00:45:23.5709613Z               "line": 415
2026-06-05T00:45:23.5710031Z             },
2026-06-05T00:45:23.5710430Z             {
2026-06-05T00:45:23.5711032Z               "path": "crates/spt-term/src/digest.rs",
2026-06-05T00:45:23.5711492Z               "line": 434
2026-06-05T00:45:23.5711895Z             },
2026-06-05T00:45:23.5712304Z             {
2026-06-05T00:45:23.5712906Z               "path": "crates/spt-term/src/digest.rs",
2026-06-05T00:45:23.5713348Z               "line": 461
2026-06-05T00:45:23.5713756Z             },
2026-06-05T00:45:23.5714163Z             {
2026-06-05T00:45:23.5714795Z               "path": "crates/spt-term/tests/digest.rs",
2026-06-05T00:45:23.5715222Z               "line": 32
2026-06-05T00:45:23.5715637Z             },
2026-06-05T00:45:23.5716042Z             {
2026-06-05T00:45:23.5716588Z               "path": "crates/spt/src/cli.rs",
2026-06-05T00:45:23.5717025Z               "line": 3213
2026-06-05T00:45:23.5717440Z             }
2026-06-05T00:45:23.5717848Z           ]
2026-06-05T00:45:23.5718246Z         }
2026-06-05T00:45:23.5718658Z       }
2026-06-05T00:45:23.5719052Z     },
2026-06-05T00:45:23.5719499Z     {
2026-06-05T00:45:23.5719948Z       "id": "REQ-UPD-1",
2026-06-05T00:45:23.5720582Z       "title": "Peer-propagated update over P2P",
2026-06-05T00:45:23.5721053Z       "requiredStages": [
2026-06-05T00:45:23.5721478Z         "impl",
2026-06-05T00:45:23.5721899Z         "unit",
2026-06-05T00:45:23.5722305Z         "int"
2026-06-05T00:45:23.5722714Z       ],
2026-06-05T00:45:23.5723130Z       "stages": {
2026-06-05T00:45:23.5723553Z         "doc": {
2026-06-05T00:45:23.5724009Z           "complete": false,
2026-06-05T00:45:23.5724459Z           "evidence": []
2026-06-05T00:45:23.5724870Z         },
2026-06-05T00:45:23.5725282Z         "impl": {
2026-06-05T00:45:23.5725741Z           "complete": true,
2026-06-05T00:45:23.5726173Z           "evidence": [
2026-06-05T00:45:23.5726588Z             {
2026-06-05T00:45:23.5727242Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-05T00:45:23.5727687Z               "line": 28
2026-06-05T00:45:23.5728098Z             },
2026-06-05T00:45:23.5728498Z             {
2026-06-05T00:45:23.5729193Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-05T00:45:23.5730086Z               "line": 74
2026-06-05T00:45:23.5730496Z             },
2026-06-05T00:45:23.5731068Z             {
2026-06-05T00:45:23.5731737Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-05T00:45:23.5732182Z               "line": 209
2026-06-05T00:45:23.5732584Z             },
2026-06-05T00:45:23.5732993Z             {
2026-06-05T00:45:23.5733633Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-05T00:45:23.5734075Z               "line": 22
2026-06-05T00:45:23.5734489Z             },
2026-06-05T00:45:23.5734893Z             {
2026-06-05T00:45:23.5735544Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-05T00:45:23.5735969Z               "line": 67
2026-06-05T00:45:23.5736378Z             },
2026-06-05T00:45:23.5736779Z             {
2026-06-05T00:45:23.5737422Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-05T00:45:23.5737859Z               "line": 80
2026-06-05T00:45:23.5738283Z             },
2026-06-05T00:45:23.5738694Z             {
2026-06-05T00:45:23.5739369Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-05T00:45:23.5739832Z               "line": 101
2026-06-05T00:45:23.5740241Z             },
2026-06-05T00:45:23.5740650Z             {
2026-06-05T00:45:23.5741283Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-05T00:45:23.5741711Z               "line": 37
2026-06-05T00:45:23.5742119Z             }
2026-06-05T00:45:23.5742516Z           ]
2026-06-05T00:45:23.5742923Z         },
2026-06-05T00:45:23.5743329Z         "int": {
2026-06-05T00:45:23.5743789Z           "complete": true,
2026-06-05T00:45:23.5744233Z           "evidence": [
2026-06-05T00:45:23.5744630Z             {
2026-06-05T00:45:23.5745297Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-05T00:45:23.5745735Z               "line": 190
2026-06-05T00:45:23.5746147Z             },
2026-06-05T00:45:23.5746544Z             {
2026-06-05T00:45:23.5747204Z               "path": "crates/spt-daemon/tests/twohost.rs",
2026-06-05T00:45:23.5747646Z               "line": 732
2026-06-05T00:45:23.5748062Z             }
2026-06-05T00:45:23.5748472Z           ]
2026-06-05T00:45:23.5748868Z         },
2026-06-05T00:45:23.5749326Z         "unit": {
2026-06-05T00:45:23.5749786Z           "complete": true,
2026-06-05T00:45:23.5750226Z           "evidence": [
2026-06-05T00:45:23.5750635Z             {
2026-06-05T00:45:23.5751271Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-05T00:45:23.5751719Z               "line": 120
2026-06-05T00:45:23.5752124Z             },
2026-06-05T00:45:23.5752534Z             {
2026-06-05T00:45:23.5753275Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-05T00:45:23.5753729Z               "line": 137
2026-06-05T00:45:23.5754146Z             },
2026-06-05T00:45:23.5754549Z             {
2026-06-05T00:45:23.5755239Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-05T00:45:23.5755692Z               "line": 201
2026-06-05T00:45:23.5756113Z             },
2026-06-05T00:45:23.5756677Z             {
2026-06-05T00:45:23.5757509Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-05T00:45:23.5757970Z               "line": 92
2026-06-05T00:45:23.5758382Z             },
2026-06-05T00:45:23.5758808Z             {
2026-06-05T00:45:23.5759633Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-05T00:45:23.5760274Z               "line": 128
2026-06-05T00:45:23.5760712Z             }
2026-06-05T00:45:23.5761121Z           ]
2026-06-05T00:45:23.5761542Z         }
2026-06-05T00:45:23.5761944Z       }
2026-06-05T00:45:23.5762360Z     },
2026-06-05T00:45:23.5762759Z     {
2026-06-05T00:45:23.5763234Z       "id": "REQ-UPD-2",
2026-06-05T00:45:23.5764059Z       "title": "All binaries signature-verified before handoff",
2026-06-05T00:45:23.5764563Z       "requiredStages": [
2026-06-05T00:45:23.5764996Z         "impl",
2026-06-05T00:45:23.5765420Z         "unit"
2026-06-05T00:45:23.5766080Z       ],
2026-06-05T00:45:23.5766522Z       "stages": {
2026-06-05T00:45:23.5766954Z         "doc": {
2026-06-05T00:45:23.5767571Z           "complete": false,
2026-06-05T00:45:23.5768040Z           "evidence": []
2026-06-05T00:45:23.5768459Z         },
2026-06-05T00:45:23.5768890Z         "impl": {
2026-06-05T00:45:23.5769578Z           "complete": true,
2026-06-05T00:45:23.5770178Z           "evidence": [
2026-06-05T00:45:23.5770597Z             {
2026-06-05T00:45:23.5771278Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-05T00:45:23.5771740Z               "line": 210
2026-06-05T00:45:23.5772158Z             },
2026-06-05T00:45:23.5772568Z             {
2026-06-05T00:45:23.5773233Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-05T00:45:23.5773669Z               "line": 294
2026-06-05T00:45:23.5774088Z             },
2026-06-05T00:45:23.5774488Z             {
2026-06-05T00:45:23.5775125Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.5775591Z               "line": 29
2026-06-05T00:45:23.5776000Z             },
2026-06-05T00:45:23.5776416Z             {
2026-06-05T00:45:23.5777063Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.5777511Z               "line": 126
2026-06-05T00:45:23.5777928Z             },
2026-06-05T00:45:23.5778330Z             {
2026-06-05T00:45:23.5783954Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.5784576Z               "line": 138
2026-06-05T00:45:23.5784995Z             },
2026-06-05T00:45:23.5785402Z             {
2026-06-05T00:45:23.5786076Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.5786525Z               "line": 220
2026-06-05T00:45:23.5786935Z             },
2026-06-05T00:45:23.5787350Z             {
2026-06-05T00:45:23.5787986Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.5788435Z               "line": 301
2026-06-05T00:45:23.5788842Z             },
2026-06-05T00:45:23.5789390Z             {
2026-06-05T00:45:23.5790034Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-05T00:45:23.5790487Z               "line": 149
2026-06-05T00:45:23.5790905Z             }
2026-06-05T00:45:23.5791310Z           ]
2026-06-05T00:45:23.5791724Z         },
2026-06-05T00:45:23.5792140Z         "int": {
2026-06-05T00:45:23.5792610Z           "complete": false,
2026-06-05T00:45:23.5793063Z           "evidence": []
2026-06-05T00:45:23.5793464Z         },
2026-06-05T00:45:23.5793885Z         "unit": {
2026-06-05T00:45:23.5794333Z           "complete": true,
2026-06-05T00:45:23.5794774Z           "evidence": [
2026-06-05T00:45:23.5795179Z             {
2026-06-05T00:45:23.5795822Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.5796268Z               "line": 386
2026-06-05T00:45:23.5796674Z             },
2026-06-05T00:45:23.5797083Z             {
2026-06-05T00:45:23.5797711Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.5798176Z               "line": 431
2026-06-05T00:45:23.5798585Z             },
2026-06-05T00:45:23.5798997Z             {
2026-06-05T00:45:23.5799697Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.5800141Z               "line": 445
2026-06-05T00:45:23.5800560Z             },
2026-06-05T00:45:23.5800968Z             {
2026-06-05T00:45:23.5801607Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.5802043Z               "line": 456
2026-06-05T00:45:23.5802463Z             },
2026-06-05T00:45:23.5802875Z             {
2026-06-05T00:45:23.5803502Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.5803951Z               "line": 532
2026-06-05T00:45:23.5804358Z             },
2026-06-05T00:45:23.5804768Z             {
2026-06-05T00:45:23.5805403Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-05T00:45:23.5805859Z               "line": 334
2026-06-05T00:45:23.5806282Z             },
2026-06-05T00:45:23.5806687Z             {
2026-06-05T00:45:23.5807639Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-05T00:45:23.5808075Z               "line": 347
2026-06-05T00:45:23.5808632Z             },
2026-06-05T00:45:23.5809038Z             {
2026-06-05T00:45:23.5809789Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-05T00:45:23.5810243Z               "line": 242
2026-06-05T00:45:23.5810650Z             }
2026-06-05T00:45:23.5811065Z           ]
2026-06-05T00:45:23.5811470Z         }
2026-06-05T00:45:23.5811875Z       }
2026-06-05T00:45:23.5812271Z     },
2026-06-05T00:45:23.5812676Z     {
2026-06-05T00:45:23.5813129Z       "id": "REQ-UPD-3",
2026-06-05T00:45:23.5814117Z       "title": "No endpoint process terminates/suspends during self-update",
2026-06-05T00:45:23.5814593Z       "requiredStages": [
2026-06-05T00:45:23.5815012Z         "impl",
2026-06-05T00:45:23.5815429Z         "unit",
2026-06-05T00:45:23.5815835Z         "int"
2026-06-05T00:45:23.5816248Z       ],
2026-06-05T00:45:23.5816690Z       "stages": {
2026-06-05T00:45:23.5817099Z         "doc": {
2026-06-05T00:45:23.5817564Z           "complete": false,
2026-06-05T00:45:23.5818022Z           "evidence": []
2026-06-05T00:45:23.5818436Z         },
2026-06-05T00:45:23.5818853Z         "impl": {
2026-06-05T00:45:23.5819353Z           "complete": true,
2026-06-05T00:45:23.5819796Z           "evidence": [
2026-06-05T00:45:23.5820196Z             {
2026-06-05T00:45:23.5820836Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-05T00:45:23.5821263Z               "line": 26
2026-06-05T00:45:23.5821673Z             },
2026-06-05T00:45:23.5822073Z             {
2026-06-05T00:45:23.5822712Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-05T00:45:23.5823162Z               "line": 111
2026-06-05T00:45:23.5823564Z             },
2026-06-05T00:45:23.5823973Z             {
2026-06-05T00:45:23.5824601Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-05T00:45:23.5825046Z               "line": 221
2026-06-05T00:45:23.5825480Z             }
2026-06-05T00:45:23.5825884Z           ]
2026-06-05T00:45:23.5826291Z         },
2026-06-05T00:45:23.5826719Z         "int": {
2026-06-05T00:45:23.5827174Z           "complete": true,
2026-06-05T00:45:23.5827605Z           "evidence": [
2026-06-05T00:45:23.5828016Z             {
2026-06-05T00:45:23.5828703Z               "path": "crates/spt-daemon/tests/brain_swap.rs",
2026-06-05T00:45:23.5829150Z               "line": 23
2026-06-05T00:45:23.5829608Z             }
2026-06-05T00:45:23.5830011Z           ]
2026-06-05T00:45:23.5830423Z         },
2026-06-05T00:45:23.5830845Z         "unit": {
2026-06-05T00:45:23.5831309Z           "complete": true,
2026-06-05T00:45:23.5831770Z           "evidence": [
2026-06-05T00:45:23.5832188Z             {
2026-06-05T00:45:23.5832829Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-05T00:45:23.5833270Z               "line": 246
2026-06-05T00:45:23.5833686Z             },
2026-06-05T00:45:23.5834083Z             {
2026-06-05T00:45:23.5834729Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-05T00:45:23.5835171Z               "line": 270
2026-06-05T00:45:23.5835590Z             },
2026-06-05T00:45:23.5835998Z             {
2026-06-05T00:45:23.5836623Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-05T00:45:23.5837074Z               "line": 281
2026-06-05T00:45:23.5837479Z             },
2026-06-05T00:45:23.5837893Z             {
2026-06-05T00:45:23.5838526Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-05T00:45:23.5838957Z               "line": 294
2026-06-05T00:45:23.5839404Z             }
2026-06-05T00:45:23.5839811Z           ]
2026-06-05T00:45:23.5840222Z         }
2026-06-05T00:45:23.5840620Z       }
2026-06-05T00:45:23.5841028Z     },
2026-06-05T00:45:23.5841426Z     {
2026-06-05T00:45:23.5841869Z       "id": "REQ-UPD-4",
2026-06-05T00:45:23.5842932Z       "title": "Update gated on user confirmation by default; opt-in full-auto",
2026-06-05T00:45:23.5843402Z       "requiredStages": [
2026-06-05T00:45:23.5843995Z         "impl",
2026-06-05T00:45:23.5844410Z         "unit"
2026-06-05T00:45:23.5844814Z       ],
2026-06-05T00:45:23.5845384Z       "stages": {
2026-06-05T00:45:23.5845800Z         "doc": {
2026-06-05T00:45:23.5846273Z           "complete": false,
2026-06-05T00:45:23.5846720Z           "evidence": []
2026-06-05T00:45:23.5847135Z         },
2026-06-05T00:45:23.5847558Z         "impl": {
2026-06-05T00:45:23.5848021Z           "complete": true,
2026-06-05T00:45:23.5848482Z           "evidence": [
2026-06-05T00:45:23.5848898Z             {
2026-06-05T00:45:23.5849592Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-05T00:45:23.5850031Z               "line": 23
2026-06-05T00:45:23.5850453Z             },
2026-06-05T00:45:23.5850854Z             {
2026-06-05T00:45:23.5851505Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-05T00:45:23.5851954Z               "line": 56
2026-06-05T00:45:23.5852358Z             },
2026-06-05T00:45:23.5852787Z             {
2026-06-05T00:45:23.5853427Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-05T00:45:23.5853881Z               "line": 77
2026-06-05T00:45:23.5854287Z             },
2026-06-05T00:45:23.5854698Z             {
2026-06-05T00:45:23.5855365Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-05T00:45:23.5855807Z               "line": 179
2026-06-05T00:45:23.5856223Z             },
2026-06-05T00:45:23.5856623Z             {
2026-06-05T00:45:23.5857239Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-05T00:45:23.5857667Z               "line": 98
2026-06-05T00:45:23.5858080Z             },
2026-06-05T00:45:23.5858500Z             {
2026-06-05T00:45:23.5859084Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.5859572Z               "line": 167
2026-06-05T00:45:23.5859978Z             }
2026-06-05T00:45:23.5860384Z           ]
2026-06-05T00:45:23.5860782Z         },
2026-06-05T00:45:23.5865014Z         "int": {
2026-06-05T00:45:23.5865586Z           "complete": false,
2026-06-05T00:45:23.5866025Z           "evidence": []
2026-06-05T00:45:23.5866444Z         },
2026-06-05T00:45:23.5866872Z         "unit": {
2026-06-05T00:45:23.5867328Z           "complete": true,
2026-06-05T00:45:23.5867756Z           "evidence": [
2026-06-05T00:45:23.5868168Z             {
2026-06-05T00:45:23.5868807Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-05T00:45:23.5869318Z               "line": 322
2026-06-05T00:45:23.5869744Z             },
2026-06-05T00:45:23.5870141Z             {
2026-06-05T00:45:23.5870782Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-05T00:45:23.5871217Z               "line": 102
2026-06-05T00:45:23.5871626Z             },
2026-06-05T00:45:23.5872036Z             {
2026-06-05T00:45:23.5872661Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-05T00:45:23.5873110Z               "line": 117
2026-06-05T00:45:23.5873519Z             },
2026-06-05T00:45:23.5873926Z             {
2026-06-05T00:45:23.5874565Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-05T00:45:23.5875003Z               "line": 136
2026-06-05T00:45:23.5875426Z             },
2026-06-05T00:45:23.5875825Z             {
2026-06-05T00:45:23.5876418Z               "path": "crates/spt-store/src/info.rs",
2026-06-05T00:45:23.5876848Z               "line": 352
2026-06-05T00:45:23.5877260Z             },
2026-06-05T00:45:23.5877657Z             {
2026-06-05T00:45:23.5878256Z               "path": "crates/spt-store/src/perch.rs",
2026-06-05T00:45:23.5878697Z               "line": 495
2026-06-05T00:45:23.5879095Z             }
2026-06-05T00:45:23.5879539Z           ]
2026-06-05T00:45:23.5879934Z         }
2026-06-05T00:45:23.5880336Z       }
2026-06-05T00:45:23.5880725Z     },
2026-06-05T00:45:23.5881131Z     {
2026-06-05T00:45:23.5881579Z       "id": "REQ-UPD-5",
2026-06-05T00:45:23.5882332Z       "title": "spt-core ripple-updates registered adapters",
2026-06-05T00:45:23.5882804Z       "requiredStages": [
2026-06-05T00:45:23.5883454Z         "impl",
2026-06-05T00:45:23.5883869Z         "unit"
2026-06-05T00:45:23.5884263Z       ],
2026-06-05T00:45:23.5884831Z       "stages": {
2026-06-05T00:45:23.5885246Z         "doc": {
2026-06-05T00:45:23.5885700Z           "complete": false,
2026-06-05T00:45:23.5886142Z           "evidence": []
2026-06-05T00:45:23.5886534Z         },
2026-06-05T00:45:23.5886959Z         "impl": {
2026-06-05T00:45:23.5887405Z           "complete": true,
2026-06-05T00:45:23.5887847Z           "evidence": [
2026-06-05T00:45:23.5888257Z             {
2026-06-05T00:45:23.5888957Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.5889440Z               "line": 27
2026-06-05T00:45:23.5889849Z             },
2026-06-05T00:45:23.5890258Z             {
2026-06-05T00:45:23.5890973Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.5891409Z               "line": 82
2026-06-05T00:45:23.5891817Z             },
2026-06-05T00:45:23.5892231Z             {
2026-06-05T00:45:23.5892944Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.5893392Z               "line": 134
2026-06-05T00:45:23.5893803Z             },
2026-06-05T00:45:23.5894200Z             {
2026-06-05T00:45:23.5894837Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.5895280Z               "line": 260
2026-06-05T00:45:23.5895684Z             },
2026-06-05T00:45:23.5896093Z             {
2026-06-05T00:45:23.5896717Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-05T00:45:23.5897165Z               "line": 288
2026-06-05T00:45:23.5897579Z             }
2026-06-05T00:45:23.5897976Z           ]
2026-06-05T00:45:23.5898378Z         },
2026-06-05T00:45:23.5898786Z         "int": {
2026-06-05T00:45:23.5899288Z           "complete": false,
2026-06-05T00:45:23.5899731Z           "evidence": []
2026-06-05T00:45:23.5900135Z         },
2026-06-05T00:45:23.5900540Z         "unit": {
2026-06-05T00:45:23.5901016Z           "complete": true,
2026-06-05T00:45:23.5901496Z           "evidence": [
2026-06-05T00:45:23.5902083Z             {
2026-06-05T00:45:23.5902905Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.5903374Z               "line": 216
2026-06-05T00:45:23.5903841Z             },
2026-06-05T00:45:23.5904336Z             {
2026-06-05T00:45:23.5905227Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.5905669Z               "line": 230
2026-06-05T00:45:23.5906068Z             },
2026-06-05T00:45:23.5906474Z             {
2026-06-05T00:45:23.5907177Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.5907619Z               "line": 244
2026-06-05T00:45:23.5908031Z             },
2026-06-05T00:45:23.5908423Z             {
2026-06-05T00:45:23.5909129Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.5909641Z               "line": 258
2026-06-05T00:45:23.5910061Z             },
2026-06-05T00:45:23.5910488Z             {
2026-06-05T00:45:23.5911196Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-05T00:45:23.5911652Z               "line": 292
2026-06-05T00:45:23.5912057Z             },
2026-06-05T00:45:23.5912460Z             {
2026-06-05T00:45:23.5913100Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-05T00:45:23.5913537Z               "line": 740
2026-06-05T00:45:23.5913935Z             }
2026-06-05T00:45:23.5914344Z           ]
2026-06-05T00:45:23.5914748Z         }
2026-06-05T00:45:23.5915139Z       }
2026-06-05T00:45:23.5915536Z     }
2026-06-05T00:45:23.5915922Z   ],
2026-06-05T00:45:23.5916352Z   "findings": []
2026-06-05T00:45:23.5916742Z }
